JavaScript几个生僻和重要的运算符

typeof 运算符用来测试表达式的类型,其结果为一个表达式数据类型的字符串,如下表:

表达式值

 返回结果
 Undefined  undefined
 null  object
 Boolean  boolean
 Number  number
 String  string
 Object(没有实现[[Call]]属性的内建对象)  object
 Object(没有实现[[Call]]属性的内建对象)  function
 Object(host对象)  由实现决定

ps:注意两个常量NaN和Infinity都是number.


instanceof
运算符用来检测表达式是否是制定类型的实例,如:

var mySite=new String("oseye.net");
alert(mySite instanceof String); // 返回true
alert(mySite instanceof Object); // 返回true,Object是所有对象的基类。

delete 运算符是用来破坏对象的属性,使其处于未初始化的undefined状态,如果破坏成功返回true,否则返回false,如:

var site=new Object();
site.name="oseye.net";
var isDeleted=delete site.name; // 破坏name属性
alert(site.name); // 返回undefined
alert(isDeleted); //返回true

delete不能破坏对象特有的属性,如数组的length属性。


void运算符用于计算表达式,然后放弃表达式的值,并返回undefined。

ps:顺带附上特殊的NaN,NaN解释引擎一般会将其表示为宜个随机的对象,所以NaN!=NaN,大小比较也为false.

出处:http://www.zhaiqianfeng.com    
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4616960.html