-
特殊运算符: ?: , var a = (1,2,3);//var a = 3 delete(Object.defineProperty(obj,'x',{configurable:false, value:1}); //obj.x就不能被delete掉了) in instanceof, typeof new this void查看全部
-
运算符类型查看全部
-
表达式分类查看全部
-
MDN:https://developer.mozilla.org/zh-CN/learn/javascript查看全部
-
MDN:https://developer.mozilla.org/zh-CN/learn/javascript查看全部
-
1.数据类型2.表达式和运算符;3.语句;查看全部
-
3)object.prototype.toString 说实话- -,这个没用过,所以涨知识了 Object.prototype.toString.apply([]) //"[Object Array]" Object .prototype.toString.apply(function(){}); //"[Object function]" Object .prototype.toString.apply(null); //"[Object null]' ... PS:ie6/7/8下存在兼容性问题,在检测null时会返回object 4)constructor构造器 每个对象都有个constructor属性,它指向该对象的构造函数类型,不过该属性的值可以被改写的,所以用它的判断并不可靠 5)duck type 百度了为啥叫“鸭子类型”,有这样的话:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。” 大概意思就是说当某个对象具备某种类型的特征或者行为时就可以被判断为某种类型,不知道是不是“能力检测”那种意思- -查看全部
-
1.类型检测 1)typeof(基本类型检测) 对所有基本类型的返回值 typeof Number //“Number” typeof String //"string" typeof Boolean //"boolean" typeof null //"object" typeof undefined //"undefined" typeof object //"object" 对函数类型的返回值 typeof function //"function" 2)由于typeof只适用于判断基本类型,对object,Date,Array进行检测时只会统一返回“object”(很显然这不是我们想要的,我们想知道它的具体类型),这时就要用到instanceof了,instanceof在检测对象时会返回具体类型,如: new array() instanceof Array //true new Date() instanceof Date //true ... 如果想用instanceof去检测基本类型只会统一返回false,另外由于instanceof是基于原型链的,所以有下列结果: //定义父类 function Parent(){} //定义子类 function Child(){} //让子类继承父类 Child.prototype = new Parent(); //此时再new一个子类实例,使用instanceof new Child() instanceof Child; //true new Child() instanceof Parent //true 通过原型链索引,new的是子类实例,子类继承父类,所以子类实例既是子类类型又属于父类类型 PS:instanceof在跨iframe或者window时由于存在多个window对象,所以在使用instanceof检测时会返回false查看全部
-
这节课看不懂的没有关系,后面肯定会细说的; instanceof是用来区分引用类型和基本数据型的; 而prototype是原型链中构造函数的一个自带属性,它是用来指向原型对象的,指向原型对象的作用是来共享这个原型对象中所有的属性和方法,为什么要这么做呢? 是因为创建每个新object对象,有时候需要给他加方法,比如object.name=”Bob“之类的,但是每次创建都很麻烦,所以就采用这种共享指向的方法,暂时就说这么多吧查看全部
-
类型检测小结查看全部
-
typeof Object.prototype.toString instanceof查看全部
-
Object.prototype.toString确定类型查看全部
-
instanceof操作符的比较基于原型链查看全部
-
typeof的判断结果有六种。其可以判断4种基本类型(number\boolean\string\undefined)和一种对象类型function。null和其他对象类型则会判断为"object"。查看全部
-
类型检测查看全部
举报
0/150
提交
取消