我会详细讲解“Object的相关方法和js遍历对象的常用方法总结”的完整攻略。
Object的相关方法
Object
是 JavaScript 的一个基础类型,它包含以下常用的方法:
创建对象
在 JavaScript 中,可以使用以下方法创建一个对象:
- 字面量方式
let obj = { prop1: 'value1', prop2: 'value2' };
- 构造函数方式
let obj = new Object();
obj.prop1 = 'value1';
obj.prop2 = 'value2';
操作属性
可以使用以下方法操作对象的属性:
- 获取属性值
let value = obj.prop;
- 设置属性值
obj.prop = 'new value';
- 判断是否存在属性
if ('prop' in obj) {
// do something
}
- 删除属性
delete obj.prop;
判断类型
可以使用以下方法判断对象的类型:
typeof
操作符
let type = typeof obj;
Object.prototype.toString
方法
let type = Object.prototype.toString.call(obj);
其他方法
Object.keys()
获取对象上的所有可枚举属性。
let keys = Object.keys(obj);
Object.values()
获取对象上的所有可枚举属性的值。
let values = Object.values(obj);
js遍历对象的常用方法总结
在 JavaScript 中,遍历对象有以下几个常用的方法:
for...in 循环
使用 for...in
循环可以遍历一个对象的所有可枚举属性。
for (let prop in obj) {
console.log(obj[prop]);
}
但是需要注意的是,for...in
循环会遍历对象的原型链上的所有可枚举属性,因此可能会导致意外的属性被遍历。
Object.keys() 方法
Object.keys()
方法可以获取一个对象上的所有可枚举属性,可以结合 Array.prototype.forEach()
方法来遍历这些属性。
Object.keys(obj).forEach((key) => {
console.log(obj[key]);
});
Object.getOwnPropertyNames() 方法
Object.getOwnPropertyNames()
方法可以获取一个对象上的所有属性,包括不可枚举属性,可以结合 Array.prototype.forEach()
方法来遍历这些属性。
Object.getOwnPropertyNames(obj).forEach((prop) => {
console.log(obj[prop]);
});
Object.getOwnPropertySymbols() 方法
Object.getOwnPropertySymbols()
方法可以获取一个对象上的所有 Symbol 类型的属性,可以结合 Array.prototype.forEach()
方法来遍历这些属性。
Object.getOwnPropertySymbols(obj).forEach((symbol) => {
console.log(obj[symbol]);
});
示例1:
let obj = {
name: '张三',
age: 18,
gender: '男',
};
for (let prop in obj) {
console.log(prop);
console.log(obj[prop]);
}
let keys = Object.keys(obj);
keys.forEach((key) => {
console.log(key);
console.log(obj[key]);
});
输出结果:
name
张三
age
18
gender
男
name
张三
age
18
gender
男
示例2:
let obj = { [Symbol('a')]: 1, [Symbol('b')]: 2 };
Object.getOwnPropertySymbols(obj).forEach((symbol) => {
console.log(obj[symbol]);
});
输出结果:
1
2
希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Object的相关方法 和 js遍历对象的常用方法总结 - Python技术站