-
Object.preventExtensions(obj) //阻止对象扩展,但是仍然可以修改,枚举,删除 Object.isExtensible(obj) //对象是否可扩展 Object.seal(obj) //阻止对象可配置,修改configurable:false Object.isSealed(obj) ;// 判断对象是否被隐藏 Object.freeze(obj) //冻结对象修改、遍历、配置 Object.isFrozen(obj); //判断对象是否被影响 以上方法只是针对于对象,并不会影响原型链查看全部
-
value(true/false):属性是否有值 writable(true/false):属性是否可以修改,是否可写 enumerable(true/false):属性是否可以遍历、枚举 configurable(true/false):属性是否可以再被修改;也表示可不可以通过delete方式删除掉该属性,true表示可以删除,false表示不可以删除 Object.defineProperty( obj , property, value )创建single属性[ value, writable, configurable, enumerable]默认为false Object.getOwnPropertyDescriptor( obj, property)查看对象的四个属性标签[ value, writable, configurable, enumerable] Object.keys( obj )获取对象的可枚举属性 Object.defineProperties创建多个属性 configurable为false情况下,只有将writable从true修改为false是允许的,其他一概不可查看全部
-
截图说明查看全部
-
get/ set 方法,逗号分隔,get 读取,set 赋值。 如果属性有get/set方法,直接给属性赋值,是不成功的。 因为Object.defineProperty方法创建的属性 默认的writeable,configurable是false的 因此不能设置 设置configurable 为true,就可设置obj.z 的值 设置writeable 为true,就可以改变原型该属性的值查看全部
-
全局变量,局部变量不能被delete,全局函数,局部作用域的函数不能被delete,隐式的创建全局变量可以被成功删除(不推荐)查看全部
-
1.变量初始化阶段 VO填充顺序: 1 函数参数(若未传入,初始化该参数值为undefined) 2 函数声明(若发生命名冲突,会覆盖,包括跟参数的冲突) 3 变量声明(初始化变量值为undefined,若发生命名冲突,会忽略) 2. 代码执行阶段查看全部
-
JS中没有块级作用域的概念 Function的方法来创建函数,函数里面访问不到当前作用域的变量,可以访问到全局作用域的变量查看全部
-
arguments是函数内的内置对象,是传的参数的数组对象查看全部
-
全局this指向全局对象。 一般的函数声明以及一般的函数表达式this还是指向全局对象。 函数作为函数对象的属性,this指向的是该函数对象。 对象上原型链上的this指的是实例对象。 new出来的函数对象的this指定是该函数对象。 bind方法中传递的对象就会变为该函数中的this,bind对象返回的是一个新的函数对象。查看全部
-
函数声明与函数表达式以及函数构造器的一些比较查看全部
-
函数声明与变量声明会被前置查看全部
-
函数声明以及函数表达式查看全部
-
默认return undefined 函数不同的调用方式查看全部
-
函数创建方式的对比查看全部
-
严格模式下: 1.不允许使用with; 2.不允许未声明的变量被赋值; 3.对象字面量的属性名不可重复; 4.禁止八进制的字面量; 5.eval,arguments变为关键字,不能作为变量、函数名 6.一般函数调用时,this指向null,而不是全局对象; 7.使用apply/call,当传入null或者undefined时,this将指向null或undefined,而不是全局对象 8.arguments.caller,arguments.callee被禁用查看全部
举报
0/150
提交
取消