美文网首页
JavaScript的七种数据类型

JavaScript的七种数据类型

作者: 饥人谷_闫向阳 | 来源:发表于2019-03-22 06:33 被阅读0次

    number

    十进制及科学计数法
    二进制(0b11)
    八进制(011,ES5 添加了 0oxx 语法)
    十六进制(0x11)

    string

    空字符串:'',长度为0
    空格字符串:' ', 长度为1
    表示单引号 var a = ' \' '(\为转义符)
    表示转义符var b = ' \\ ', 长度为1

    boolean(布尔)

    值为ture/false
    &&与运算,||或运算

    symbol

    不常用,可参考方方的https://zhuanlan.zhihu.com/p/22652486

    null和undefined

    1.变量没有赋值==>undefined
    2.有一个对象object,现在不想赋值,==>null(推荐)
    3.有一个非对象,不想赋值==>undefined
    以上六种为基本类型(简单类型)

    object

    object为复杂类型,复杂类型是由简单类型组成的
    对于var a = {'key1' = 'value1', 'key2' = 'value2'}, key可以为空字符串,a['key']中的引号一般不能省略;key按照标识符规则书写时,引号可以省略。并且a['key']可以改写成a.key
    删除key:delete a['key'], 删除后该key为undefined

    几个BUG

    1.typeof null //'object'
    2.typeof function // 'function'
    

    几个问题

    1. JavaScript引擎不能自动识别编号大于0xFFFF的Unicode字符
      JS允许在程序中使用Unicode编号表示字符,写成\uxxxx的形式
      '\u00A9' 表示 "©"
      var f\u006F\u006F 是合法的
      "𝌆".length 为 2 但 "𝌆" 是单个字符
    2. 全局函数 btoa() 能将字符串转为Base64编码
      全局函数 atob() 能将 Base64编码转为原来的编码
      要将非ASCII码字符转为Base64编码,必须中间插入一个转码环节
    3. 对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合
      var o1 = {}; 可以创建一个对象
      var o2 = new Object(); 可以创建一个对象
      var o3 = Object.create(Object.prototype); 可以创建一个对象
    4. 想知道变量 a 是否已经声明过(值为 undefined 不代表没有声明过),应该用if ('a' in window) { ... }
      想知道一个对象有哪些 key,应该API Object.keys(obj)
    5. for…in 循环
      for...in 循环用来遍历对象
      for...in 循环会跳过不可遍历的 key
      for…in 循环不仅遍历对象自身的属性,还遍历继承的属性

    参考:http://javascript.ruanyifeng.com/

    相关文章

      网友评论

          本文标题:JavaScript的七种数据类型

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