JavaScript 中的对象
有键值对,用冒号分隔。密钥也称为属性
相似之处:数组的索引被对象中的键替换。
对象字面量语法是直接在 {}
中写入属性
对于对象来说,检索期间的顺序并不重要,而对于数组来说,顺序很重要。
数组:用于结构化数据
对象:用于非结构化数据
对象中的属性查找方法:
- 使用点表示法
- 使用方括号表示法:键定义为引号内 [] 内的字符串,键名称也可以是表达式。 前任。 obj['名字']; 前任。对象[2+3]; 放置表达式不适用于点表示法。我们需要使用最终的属性名称,而不是计算的属性名称。
因此,当我们有计算属性名称时,建议使用括号表示法。
如果属性不存在并且我们尝试访问它,则会返回 undefined。
obj['insta-id'] = '@juju';
请参阅 mdn 上的运算符优先级表以了解更多信息。
对象方法
fns 是一种值。因此,我们可以创建键值对,其中值是 fn。意味着我们可以将 fns 添加到对象中。
fn 表达式成为对象内部的方法,即附加到对象的 fn 作为键的值。
对象内的 fn 声明将不起作用。
method 也是保存 fn 值的对象的属性。
我们可以使用以下形式的值:数组、字符串、布尔值、fn 等
obj.propname(); // 将获取 fn 值并使用 ()
'this' :指代其调用的对象
const person = { fName: 'Raja', lName: 'Rajeshwar', bYear: 1970, job: 'King', friends: ["Billu","Penchu","Ramesh"], calcAge: function(){ // this will be the object which has called this method. // Its used to reference the object, and not hardcode it. console.log(this); // a new property is created on the person object named 'age' this.age = 2024 - this.bYear return this.age; } } person.calcAge(1970); // age property will only exist if this fn was called atleast once else it won't exist. person.age;
数组、fns 都是 js 中的底层对象。因此,他们有自己的方法。
以上就是JavaScript 中的对象的详细内容,更多请关注其它相关文章!