美文网首页
记录3 对象

记录3 对象

作者: suhuanzhen | 来源:发表于2017-01-06 22:31 被阅读0次

    对象的定义与访问

    对象的键只有一种类型,那就是字符串,所以我们的键一般都要加上双引号。如果键不加上双引号也可以被转换为字符串,不过这样的做法不好,如下如果把legs num去掉双引号就不行了,因为legs后面的空格在转换为字符串时就被识别为字符串的末尾。

    var duck = {
        "legs num": 4,
        name: "Xiao",
        "color": "black"
    }
    duck;
    >> Object {legs num: 4, name: "Xiao", color: "black"}
    

    对象定义也可以写成一行

    var duck = { "legs num": 4, name: "Xiao","color": "black" }
    

    可以定义一个空对象,后面陆续添加键值对。

    duck = {}
    duck["newName"]="Big";
    duck["age"]=33;
    duck.color = "white";
    duck
    >>  Object {newName: "Big", age: 33, color: "white"}
    

    虽然定义时,键可以不加引号,但是访问对象元素时就必须加上引号

    duck["legs num"]
    4
    duck[legs num]
    >>  Uncaught SyntaxError: Unexpected identifier
    duck[name]
    >>  undefined
    duck["name"]
    >>  "Xiao"
    

    还可以通过点操作符访问对象属性

    duck.name
    >>  "Xiao"
    

    访问对象所有的键

    使用 Object.keys()传入对象参数,返回所有键组成的数组

    Object.keys(duck)
    >> ["legs num", "name", "color"]
    

    访问对象不存在的属性时,不会报错,会返回undefined

    duck.isBrown
    >>  undefined
    

    相关文章

      网友评论

          本文标题:记录3 对象

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