JS数据类型之对象

概述

对象就是一组键值对的集合,是一种无序的数据集合。

var obj = {
    foo: 'hello',
    bar: 'world'
}

上面代码中,大括号就定义了一个对象,它被赋值给变量obj,所以变量obj就指向一个对象。该对象内部包含两个键值对,第一个键值对是foo: 'hello',其中foo是键名,字符串hello是键值,键名与键值之间用冒号分割。键值对之间用逗号分隔。

属性的操作

属性的读取

获取对象的属性,有点运算符和方括号运算符两种方法

var obj = {
    p: 'Hello World'
};
// 点运算符
console.log(obj.p); // Hello World
// 方括号运算符 键名必须放在符号里面
console.log(obj['p']); // Hello World

属性的赋值

点运算符和方括号运算符,不仅可以用来读取值,还可以用来赋值。

var obj = {};
obj.foo = 'Hello'
console.log(obj); // {foo: 'Hello'}

obj['bar'] = 'World'
console.log(obj); // {foo: 'Hello', bar: 'World'}

属性的查看

查看一个对象本身的所有属性,可以使用Object.keys方法

var obj = {
  key1: 1,
  key2: 2,
}

console.log(Object.keys(obj)); // ['key1', 'key2']

属性的删除

delete命令用来删除对象的属性,删除成功后返回true

 var obj = { p: 1 };
console.log(Object.keys(obj)); // ['p']

delete obj.p;
console.log(obj.p); // undefined
console.log(Object.keys(obj)); // []

上面代码中,delete命令删除对象的p属性。删除后,在读取p属性就会返回undefined,并且Object.keys方法的返回值也不再包含该属性。

对象遍历

for...in循环用来遍历一个对象的全部属性。

var obj = {a: 1, b: 2, c: 3};
for(var i in obj) {
    console.log(i); // a b c
    console.log(obj[i]); // 1 2 3
}

for...in循环有两个使用注意点:

  • 它遍历的是对象所有可遍历的属性,会跳过不可遍历的属性
  • 它不仅遍历对象自身的属性,还会遍历继承的属性

这些信息可能会帮助到你: 关于我们 | 饿了么返钱 | 捐赠支持

文章名称:JS数据类型之对象
文章链接:https://www.bysjb.cn/js-object-2.html
THE END
分享
二维码
打赏
< <上一篇
下一篇>>