美文网首页
JS 里的数据类型

JS 里的数据类型

作者: 江湖竖子 | 来源:发表于2018-07-03 16:18 被阅读14次

    JavaScript中,总共有七种数据类型。分别为:

    • number(数字)
    • string(字符串)
    • boolean(布尔值)
    • symbol (ES6新增)
    • undefined(未定义)
    • null(空值)
    • object (对象)

    array数组和function函数不在这七种当中

    1. number

    number数据类型,就是整数和小数。

    JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以,1与1.0是相同的,是同一个数。

    1 === 1.0 // true
    

    —— 阮一峰JavaScript标准参考教程

    所以,在JavaScript内部,没有整数的概念,所有数字都是64位的浮点数,也就是小数。
    小数的运算是不精确的,因此要小心使用.
    在进行运算时,会把64位浮点数转化为整数,再进行计算。

    数值的表示方法大体分为两种,字面形式和科学计数法。
    字面形式表示,就是数值直接展现,一般有四种进制的表示方法:

    十六进制 —— 有前缀0x或0X的数值,如 0x11
    十进制 —— 没有前缀0的数值,如 16
    八进制 —— 有前缀0o或0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值,如011
    二进制 —— 有前缀0b或0B的数值,如0b11

    JavaScript中,默认为十进制。

    2. string

    string字符串,就是放在单引号或者双引号当中的字符。可以是多个或者零个。

    '' 
    'abcd'
    "abcd"
    

    声明字符串时,要使用到单引号或者双引号的符号时,外层的引号可以嵌套使用

    ' var a= "bcd" '
    " var b = 'acd ' "
    

    如果单双引号都要用到,则可以使用转义字符 \ 反斜杠,只要在使用的引号前加一个\

    ' she\'s code so \"nice\" '
    //相当于字符串  she's code so "nice" 
    
    

    常用的转义字符

    \0 :null(\u0000)
    \b :后退键(\u0008)
    \f :换页符(\u000C)
    \n :换行符(\u000A)
    \r :回车键(\u000D)
    \t :制表符(\u0009)
    \v :垂直制表符(\u000B)
    ' :单引号(\u0027)
    " :双引号(\u0022)
    \ :反斜杠(\u005C)

    3. boolean

    boolean布尔,只有两个值,true和false。
    布尔值往往用于程序流程的控制,判断一个条件的布尔值,true执行true操作,false执行false操作。

    4. undefined和null

    null与undefined都可以表示“没有”,含义非常相似,所以放在一起讲解。
    将一个变量赋值为undefined或null,语法效果几乎没什么不同。相等运算符 == 甚至直接将两者是等价的。
    两者这么相似,那么为什么要多余设计两个出来呢。这就是js的历史相关了,有兴趣的可以另外查询。
    那么两者有什么不同呢,这个才是主要的。

    null表示空值,undefined表示未定义。
    规范上,如果一个变量没有被赋值,那么这个变量就是undefined
    习惯上,如果你想表示一个还没赋值的对象,就用null

    5. object

    对象(object)是 JavaScript 语言的核心概念,也是最重要的数据类型。
    什么是对象?简单说,对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。

    ——— 阮一峰JavaScript标准参考教程

    用大括号定一个对象,对象的内容,由键名和键值组成,键名和键值用冒号分隔。

    {
     key:value
    }
    

    如果有多个对象值,则用分号隔开,

    {
     key1:value1 ,
     key2:value2 ,
     key3:value3 ,
     key4:value4 
    }
    

    对象的所有键名keys都是字符(引号可以省去),如果是数值,js会自动转换成字符串。
    如果键名不符合标识符命名的条件,则必须添加引号,否则会报错。

    6. symbol

    symbol是ES6新添的类型,目前接触的不是很多,有兴趣的可以点击下方链接学习

    symbol MDN

    相关文章

      网友评论

          本文标题:JS 里的数据类型

          本文链接:https://www.haomeiwen.com/subject/ietjuftx.html