尝试通过阅读underscore源代码来学习javascript,并遇到以下代码:
var shallowProperty = function(key) {
return function(obj) {
return obj == null ? void 0 : obj[key];
};
};
var getLength = shallowProperty('length');
console.log(getLength('123'))//3
console.log('123'['length'])//3
console.log(getLength(['1','2']))//2
console.log(['1','2']['length'])//2
我的问题是,除了[length]
之外,['1','2']
是什么?任何技术术语都可以称之为?我们在哪里可以获得除length
以外的其他可用键/属性的完整列表?
答案 0 :(得分:1)
数组是一个JavaScript对象。对象可以有properties
。您可以通过以下几种方式访问它们:
myObject.property
myObject['property']
请参阅此MDN documentation。
显示对象的所有属性:
Object.getOwnPropertyNames(myObject);
您可能希望参考此question来列出对象的属性。
答案 1 :(得分:1)
假设您有以下object
:
let person = {
name: 'foo',
age: 23
}
// Then, there are two possible ways to get the properties of "person" object
console.log(person.name); // logs 'foo'
console.log(person['name']); // logs 'foo'