记录3 对象

对象的定义与访问

对象的键只有一种类型,那就是字符串,所以我们的键一般都要加上双引号。如果键不加上双引号也可以被转换为字符串,不过这样的做法不好,如下如果把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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,874评论 1 10
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,759评论 18 399
  • 多谢你 高歌伴我白螺杯 在这 将暮的时节 多谢你 打马而过 赠我一场疑似风月 在这 梵唱的长街 钟磬噙着寒烟 月色...
    苏长亭阅读 736评论 63 40
  • 繁华的大都市里,商场里人声鼎沸,女孩一家从外地来到这里,给父亲看病。父亲病瞧好了,一家人一起来逛街。 时间已经到中...
    果铃叮咚阅读 406评论 0 1
  • 如果对现在生活哪里不满意。我们常常想,我将来可以变成。。。或者都怪***,我离开他们,我就能变好了。 这些其实都不...
    玩儿_温暖阅读 170评论 0 0