-
并不是所有的函数原型都是object.prototype,例如object.create(null); 并不是所有的函数都有prototype属性,例如bind返回的函数查看全部
-
Object.create(x)创建一个空对象,并且这个对象的原型指向这个参数x查看全部
-
在子类的同名方法中想调用父类的方法时,可以使用Person.prototype.init.apply(this,arguments)方法调用查看全部
-
Object.create的模拟查看全部
-
可以使用Object.hasOwnProperty('属性')判断该属性是不是prototype 上的方法或属性查看全部
-
原型__proto__与对象prototype不一样,一般new出来的原型(__proto__)指向构造函数的prototype,在对象prototype中有很多属性,基本的就是{constructor:foo,__proto__:""},别的属性就是自定义的查看全部
-
Object.create(obj)创建一个空对象,并且这个对象的原型指向obj查看全部
-
原型链的终极形态查看全部
-
对于Person中的this,如果是直接调用Person函数,则该this指向window对象,如果是使用new的方法,则this指向原型为Person.prototype的空对象查看全部
-
无论是一元加好+obj或者是二元的作为字符串拼接的+号,"result"+obj,都会尝试将对象转为字符串,如果valueOf存在,就会先找valueof,若果valueof返回的是基本类型的就会用这个值,如果是个对象就会找toString,如果toString是基本类型,就会用这个,如果是对象,就会报错,cannot convert object to primitive value查看全部
-
解析json的时候,undefined和NAN会被解析成 null,new Date()会被解析成utc的时间格式 JSON.stringify() JSON.parse()查看全部
-
Object.preventExtensive(obj),是不可扩展,不能添加新的属性,但里面属性的标签均还不变(true); Object.seal(obj),隐藏对象,configurable为false; Object.,freeze(obj),冻结对象,writable、configurable都为false查看全部
-
一、configurale:true, writable:false的时候若想修改属性的值有两种方式:1、Object.defineProperty(obj,'z',{value:100});2.Object.defineProperty_(obj,'z',{writable:true}); obj.z = 1; 二、无论configurable是不是true,把writable从true改为fale总是允许的查看全部
-
通常情况下,obj.z =100,当前对象没有z属性,新建z属性并赋值为100; 如果向上查找原型链上有z属性,并且有get/set方法,则不会做更改; 怎么样使得obj新添z呢?用Object.defineProperty(obj,'z','value:100, congigurable:true')的方法查看全部
-
obj.prototype指向一个对象{constructor:Foo,__proto__:Object.prototype,x:1}因为其指向的对象中有__proto__,且其是指向Object.prototype的,所以可以使用Object对象上的函数功能查看全部
举报
0/150
提交
取消