对象访问符号:方括号(Javascript)
Object access notation: square bracket (Javascript)
我不知道如何阅读这段代码:
var byName = {};
ancestry.forEach(function(person){ byName[person.name] = person;]);
console.log(byName["Phil"]);
我感到困惑的是代码的"byName[person.name] = person"部分。
1) byName[person.name]是什么意思?为什么使用方括号符号而不是点符号?
2)为什么它等于person (byName[person.name] = person),这是如何工作的?
ps: ancestry是一个JSON字符串文件,可以在我的电子书沙盒中使用。
点表示法使用标识符。x.foo
获得foo
属性
方括号表示法接受一个字符串。x["foo"]
获得foo
属性
字符串可以来自任何表达式。
var person = {};
person.name = "foo";
x[person.name]
获取foo
属性
byName[person.name] = person;
分解为"在byName
对象上创建一个以当前人物命名的新属性,并使其值为当前人物对象"
这段代码循环遍历ancestry
并添加到对象byName
。byName[person.name] = person
正在向byName
对象添加一个新元素。关键字为person.name
,设定值为person
。换句话说,这段代码允许通过名称快速查找person
对象。最后一行代码演示了这一点。
相关文章:
- 在javascript中使用方括号表示法的嵌套对象
- 正则表达式,用于匹配JavaScript的括号和方括号
- Javascript在字符串中嵌套了方括号
- 为什么在 JavaScript 函数调用中使用方括号?jquery.
- 方括号之间的 Javascript 增量号
- 使用 javascript/Jquery 获取方括号内的字符串
- JavaScript:我可以使用方括号([])运算符作为函数吗?
- 如何在Javascript中增加方括号内的数字
- JavaScript - 替换字符串中的方括号
- 带有方括号和引号的 JavaScript JSON 对象
- Javascript 中 String.prototype.search() 中的方括号
- JavaScript Regex 用于匹配嵌套方括号内的任何单词
- Javascript 在 href 更改时删除方括号
- Javascript:在大括号和方括号内回显变量
- JavaScript - 替换 name 属性中第一个方括号之间的值
- 在 javascript 中字符串的开头和结尾添加方括号
- 如何使用 JavaScript 获取方括号内的属性
- 将JavaScript数组打印为HTML,方括号和引号完好无损
- Javascript方括号符号多个动态属性
- JavaScript方括号函数调用