X

曜彤.手记

随记,关于互联网技术、产品与创业

简谈 JavaScript 中的数据类型

为什么要突然说起 JavaScript(后面简称 “JS”) 的数据类型呢?因为最近在看书的时候发现,JS 的数据类型相比其他语言,比如 Java,C++ 等面向对象的高级语言来说,显得十分简洁,却又十分灵活。JS 是一种轻量级的“解释型”语言,它虽然不支持类,但却提供了比类更加强大的和灵活的语言特性。

JS 的数据类型十分简洁,简单数据类型只有 undefinednullbooleannumberstring 五种。而复杂数据类型只有一种,即 object。在 JS 中,代码只体现为一种形式,即 function

为了进一步的简化编程,JS 还在这些简单数据之上,又规定了一些特殊含义。比如:undefinednull“”0 这四个值转换为逻辑值是就是 false,除此之外的其他类型均为 true。而在这五个类型中,除了 undefined == null 成立之外,其他的又互不相等。

在 JS 中,“==” 表示不全等,即虽然类型不同,但只要值能够相互转换即可,比如 “123” == 123,而 “===” 则表示全等的概念。即数据类型及数据的值均要相等,所以 undefined == null 返回 true,而 undefined === null 则返回 false

因此,这里如果用 typeof 运算符来表示 “!==”,即不全等,则可以表示为:

A != B || typeof(A) != typeof(B);

同理,如果要表示全不等,可表示为:

A != B && typeof(A) != typeof(B);



评论 | Comments


Loading ...