-
Object.defineProperty(Object.prototype, 'x', {writable: true, value: 1});//默认改写x属性的enumerable为false查看全部
-
动态修改prototype属性的时候,会影响已经创建的实例。 如果将prototype赋值为另一个对象,会影响后续创建的实例。对已经创建的实例没有影响。查看全部
-
使用bind声明的函数没有prototype属性查看全部
-
使用Object.create(null)创建的对象没有_proto_和toString方法。查看全部
-
原型链关系图。查看全部
-
Person是父类的构造函数,Student是子类的构造函数。这里子类Student继承了父类的属性。 function Student(name, age, className){ Person.call(this, name, age); this.className = className; } //这段函数使Student继承了Person的属性。Person.call(this, name, age);也可以写为Person.call(this, arguments); Student.prototype = Object.create(Person.prototype); Student.prototype.constructor = Student; //这段函数使Student的原型继承了Person的原型。使用Objet.create是为了不让Student.prototype和Person.prototype指向同一个对象。 这个例子中的name, age, className为私有属性,写在构造函数中。原型中的LEGS_NUM和ARM_NUM为共有属性。所有新生成的实例共享共有属性。比如 var bosn=new Student('Bosn', 27, 'class 3, grade 2'); var olderBosn=new Student('Older Bosn', 28, 'class 3, grade 2'); bosn.LEGS_NUM == olderBosn.LEGS_NUM; //true查看全部
-
,逗号运算符查看全部
-
嚴格模式下: 1.一般函數調用時的this不是指向全局,而是null or undefined 2.arguments.caller, arguments.callee禁用查看全部
-
在嚴格模式下: 不能直接對arg做更改,但可以透過傳入object更改內部value查看全部
-
for in 陷阱查看全部
-
try catch 用法,必須搭配catch&finally查看全部
-
VO填充顺序: 函数参数(未传入则参数值为undefined)-> 函数声明(如有命名冲突则覆盖)-> 变量声明(初始为undefined,如有命名冲突则忽略) 填充时,等号后面内容暂不执行。因此函数声明function a(){}会被提前,而函数表达式var a=function(){}则不会。查看全部
-
对象结构查看全部
-
这个。。查看全部
-
typeof 适合基本类型的及fuction的检测,但是遇到null返回的是object instancefo适合自定义对象,在不同的iframe和window间检测失效 Object.prototype.toString.apply(需要操作的数); 合适内置对象和基元类型,在IE678中,遇到null和undefined失效。查看全部
举报
0/150
提交
取消