indextanceof详解
大约 2 分钟
indextanceof
详解
2-29-4【TS类型守卫】从原埋上深层拿握instanceofinstanceof格式:对象变量instanceof 类名或函数名instanceof的主要作用: instanceof帮助我们准确的判断一种自定义函数或类创建的对象变量的数据类型。instanceof 执行后返回true的几种条件【符合一个即可】∶
- (1) 对象变量, proto=类名或函数名.prototype。 解释1:如果instanceof关键字左边对象变量的proto属性指向的原型对象空间=右边类名或函数名的prototype对象属性指向的原型对象空间,那么返回true。
- (2)对象变量.proto.proto.....proto=类名或函数名.prototype。 解释2: instanceof左边对象变量proto的1到多个上一级proto指向的原型对象空间,等于右边类名或函数名的prototype对象属性指向的原型对象空间,那么也返回true,按照这个查找规律,会一直找到 Object.prototype对象属性指向的原型对象空间为止。
什么样的类可以被定义为抽象类
从宏观上来说,任何-一个实例化后毫无意义的类都可以被定义为抽象类。比如:我们实例化-个玫瑰花类的对 象变量,可以得到-个具体的玫瑰花实例对象,但如果我们实例化-一个Flower 类的对象变量,那世界,上有 -个叫花的对象吗?很明显没有,所以Flower类可以定义为一个抽象类,但玫瑰花可以定义为具体的类。 -个类定义为抽象类的样子 abstract class类名{可以有0到多个抽象方法[只有方法体,没有方法实现的方法],可以有0到多个具体 方法,可以有构造器,可以有0到多个实例属性, 0到多个静态属性,0到多个静态方法}单纯从类的定义上 来看和普通类没有区别,只是多了可以有0到多个抽象方法这- -条。 抽象类的特点 可以包含只有方法体的方法[和方法签名类似,就是多了abstract 关键字]。也可以包含实现了具体功能的方 法,可以包含构造器,但不能直接实例化-个抽象类,只能通过子类来实例化。 抽象类相比普通类充当父类给项目带来的好处