hasOwnProperty():看是不是对象自身(自己有别人没有)下面的属性。
hasOwnProperty()
|
|
constructor:查看对象的构造函数
- 每个原型都会自动添加constructor属性
- for in 的时候有些属性是找到不到的
- 避免修改constructor属性
|
|
我们可以利用这个属性来做判断
|
|
再来看
|
|
我们来做个试验
|
|
|
|
注意:A.prototype.constructor = A;是系统自动添加的,我们不要去改它,但是有些情况我们会不自觉地就给改了。
|
|
下面我们将A.prototype.name = "Jack";A.prototype.age = 20;改写成JSON的形式
|
|
|
|
那要怎么办呢?答案就是在使用json的时候,把constructor给修正过来
|
|
系统自带的属性不能被for in 循环到
|
|
|
|
|
|
instanceof:对象与构造函数在原型链上是否有关系
看例子
|
|
toString():系统对象下面都是自带的,自己写的对象都是通过原型链找Object下面的。
|
|
|
|
|
|
|
|
toString():把对象转成字符串
|
|
知道原理之后可以自己改写
|
|
我们还可以用toString()来进行进制的转换
|
|
利用toString()做类型的判断
|
|
小结:如何判断一个对象是不是数组?
|
|
扩展:
写一个函数,获得函数名
|
|
简化一下
|
|
|
|
本文结束,感谢阅读。
本文作者:melody0z
本文链接:https://melodyvoid/JavaScript/some-atributes-and-methods-comonly-used-in-object-oriented.html
欢迎转载,转载请注明文本链接