-
Object.preventExtensions() //阻止对象扩展(阻止增加) Object.isExtensible() //对象是否可扩展 Object.seal() //阻止对象可配置,修改configurable Object.isSealed() Object.freeze() //冻结对象修改、遍历、配置 Object.isFrozen()查看全部
-
1.屬性讀寫 obj.property obj["propertyName"] var i = 1, n = 50; for (;i<=n;i++){console.log(obj["x"+i])}遍歷多屬性 for (p in obj){console.log(obj[p])}可能原型鏈也進入 2.var yz = obj && obj.y && obj.y.z 全true才返回true,否則使對應的屬性值,巧用運算符 3.刪除屬性 delete obj.property Object.prototype 不能刪 Object.getOwnPropertyDescriptor(Object,'prototype'); 全局、局部變量 delete不了,隱式定義的則可以 4.屬性檢測 'value' in Obj 但上溯到原型 obj.hasOwnProperty("value") obj.propertyIsEnumerable("value")是否可枚舉 Object.defineProperty(屬性對象,屬性名字,對象) 5.屬性枚舉查看全部
-
1.使用{}声明 2.使用new,附带原型链,Object.prototype为末端 prototype与Java的super有相似的意义 3.Object.create({});所创建的对象将会prototype={}; 默认的原型是Object.prototype var obj=Object.create(null);原型为null查看全部
-
函数声明,和函数表达式的最主要区别: 前者会被预先处理,可在声明前调用。而后者不可以 for..in 遍历顺序不确定,依赖于引擎实现查看全部
-
javascript 没有块级作用域查看全部
-
运算符 一元运算符 +num 二元运算符 a+b 三元运算符 x?a:b 特殊运算符 1、条件运算符 var val=true?1:2; // val=1; 2、逗号运算符 var val=(1,2,3); // val=3; 从左到右依次计算表达式的值,最后取最右边的值 3、delete运算符 -- 删除对象上的属性 var obj = {x:1}; obj.x; //1 delete obj.x; obj.x; //undefined 从ie9开始以后,Object.defineProperty var obj={}; Object.defineProperty(obj,'x',{ configurable:false, value:1 }) delete obj.x; //false(当configurable:true时,才可以被delete) obj.x; //1 (输出1,代表没被成功删除) 4、in运算符 window.x=1; 'x' in window; 判断window里面有没有x这个key,可用in运算符,有则返回true 5、instanceof、typeof运算符 {} instanceof Object // true typeof 100 === 'number' // true 6、new运算符 function Foo(){} Foo.prototype.x=1; var obj = new Foo(); obj.x; // 1 obj.hasOwnProperty('x'); // false (判断是否为对象本身的属性) obj._proto_.hasOwnProperty('x'); // true(判断是否为对象原型上的属性) 7、this运算符 this; // window(浏览器) var obj = { func : function(){return this;} }; obj.func(); // obj 8、void运算符(一元运算符) void 0 //undefined void(0) //undefined 不管void后面的操作数是什么,最终都会返回undefined查看全部
-
表达式: 是指能计算出值得任何可用程序单元。 ——Wiki 是一种JS短语,可使JS解释器用来产生一个值。——《JS权威指南》 1、原始表达式 产量、直接量 --> 3.14,"test" 关键字 --> null,this,true 变量 --> i,j,k 原始表达式和原始表达式之间可以复合成"复合表达式" 2、数组、对象的初始化表达式 [1,2] --> new Array(1,2); [1,,,4] --> [1,undefined,undefined,4] {x:1,y:2}--> var o=new Object();o.x=1;o.y=2; 3、函数表达式 var fe = function(){}; (function(){console.log('hello world');})(); 4、属性访问表达式 var o={x:1}; o.x o['x'] 5、调用表达式 func(); // 调用函数 6、对象创建表达式 new Func(1,2); // 带参数函数 new Object; //创建空对象查看全部
-
NaN和谁比较都不相等 包括和自己查看全部
-
巧用+ / - 规则转换类型 var num; //定义个变量 如果想将一个变量变为字符串型,则可以加上一个空字符串:num + '' 如果想将一个变量转换成数字,则可以-0: num-0查看全部
-
在js中 function array date等都是对象类型查看全部
-
JavaScript类型检测小结查看全部
-
Javascript数据类型查看全部
-
/.../.test('') or new RegExp('正则')查看全部
-
typeof返回值查看全部
-
属性get/set方法查看全部
举报
0/150
提交
取消