你的位置:首页 > 软件开发 > Java > javascript类型与类型检测

javascript类型与类型检测

发布时间:2016-11-09 21:00:14
1.javascript类型:注:包装对象:如“hello”.length实际为js为我们隐式创建了一个String临时对象,去调用该对象的length属性,调用过后再将该临时对象删除。因此,如果原始类型变量使用.length,.toString()等js属性、方法等,用var ...

javascript类型与类型检测

1.javascript类型:

javascript类型与类型检测

注:包装对象:如“hello”.length实际为js为我们隐式创建了一个String临时对象,去调用该对象的length属性,调用过后再将该临时对象删除。

因此,如果原始类型变量使用.length,.toString()等js属性、方法等,用var str = new String(‘hello’)的效率要优于var str = ‘hello’,因为使用过程中无需再多次建立和删除临时包装对象。

2.javascript类型检测:

(1).typeof:适用于原始类型(除了null)和Function类型

     使用方法:例:typeof “hello” 返回 “string”

     可检测出类型变量的返回值:“类型”。如“number”,“boolean”

     不可检测出类型变量的返回值:“object”

(2).instanceof:基于原型链进行检测。用于对象类型。可用于原声对象和自定义对象。

     使用方法:[1,2] instanceof Array 返回 true;

     返回值:true / false

     自定义对象检测举例:

        javascript类型与类型检测

      注:iframe或window之间的自定义对象不可检测。

(3).Object.prototype.toString:适用于基本类型和对象类型。(ie6/7/8无法检测出null和undefined)

     使用方法:Object.prototype.toString.apply('a') 返回 "[object String]"

     返回值:"[object 类型]"。如"[object Array]","[object Null]"


原标题:javascript类型与类型检测

关键词:JavaScript

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。