js数据类型

概述

JavaScript是弱类型语言,但不是没有数据类型,JavaScript规定了五种简单的数据类型

  • (1)数值(Number):整数和小数(比如1和3.14)
  • (2)字符串(String):字符组成的文本(比如'Hello World')
  • (3)布尔值(Boolean):true(真)和false(假)两个特定值
  • (4)Undefined:表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值
  • (5)Null:表示无值,即此处的值就是“无”的状态。

还有一种复杂的数据类型--Object,Object本质上是一组无序的名值对组合

对象又可以分成三个子类型。

  • 狭义的对象(object)
  • 数组(array)
  • 函数(function)

typeof运算符

  • (1)原始类型
    数值、字符串、布尔值分别返回number、string、boolean。
typeof 123 // "number"
typeof '123' // "string"
typeof false // "boolean"
  • (2)undefined
    undefined返回undefined。
typeof undefined
// "undefined"

利用这一点,typeof可以用来检查一个没有声明的变量,而不报错。

v
// ReferenceError: v is not defined

typeof v
// "undefined"

上面代码中,变量v没有用var命令声明,直接使用就会报错。但是,放在typeof后面,就不报错了,而是返回undefined。

实际编程中,这个特点通常用在判断语句。

// 错误的写法
if (v) {
  // ...
}
// ReferenceError: v is not defined
// 正确的写法
if (typeof v === "undefined") {
  // ...
}

(3)其他

除此以外,其他情况都返回object。

typeof window // "object"
typeof {} // "object"
typeof [] // "object"
typeof null // "object"

从上面代码可以看到,空数组([])的类型也是object,这表示在JavaScript内部,数组本质上只是一种特殊的对象。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,674评论 0 13
  • 1.数据类型的分类 1.总体分类 JavaScript语言的每一个值,都属于某一种数据类型。JavaScript的...
    饥人谷_小侯阅读 1,865评论 0 0
  • 使用Number函数,可以将任意类型的值转化成数值。 下面分成两种情况讨论,一种是参数是原始类型的值,另一种是参数...
    青春前行阅读 3,308评论 0 0
  • 数据类型分类 JavaScript语言的每一个值,都属于某一种数据类型。JavaScript的数据类型,共有七种。...
    yuhuan121阅读 3,526评论 0 0
  • 夏天的热情还未消散,立秋的凉爽纷至沓来。季节在岁月里轮回,你呀,是时候改变自己:一个计划,一种人生! 凡事有计划,...
    小剧在成长阅读 2,454评论 0 4