javascript中常用的对象操作方法

Object.keys(obj) 返回对象的key组成的数组

返回一个所有元素为字符串的数组,其元素来自于从给定的object上面可直接枚举的属性,不会返回原型上的方法。

const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	eyecolor:"blue"
};
console.log(Object.keys(obj))
['firstname', 'lastname', 'age', 'eyecolor'] //返回key组成的数组
复制代码

Object.values(obj) 返回对象的value组成的数组

返回一个由value组成的数组,其元素是在对象上找到的可枚举属性值。

const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	eyecolor:"blue"
};
console.log(Object.values(obj))
['John', 'Doe', 50, 'blue']   //返回value组成的数组
复制代码

Object.assign() 可以将源对象复制到目标对象中

Object.assign(target, ...sources)
target 为目标对象,...sources 为源对象(可以为多个对象)

//  浅拷贝对象
const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	love:{
		color: "blue",
		sport: "football"
	}
};
const copy = Object.assign({}, obj);
console.log(copy) // 返回浅拷贝的对象,修该obj会同时修改copy的值


// 合并多个对象
const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	love:{
		color: "blue",
		sport: "football"
	}
};
const obj2 = { other: "cat" };
const obj3 = { car: "Benz" };

const  compose = Object.assign(obj, obj2, obj3); // 返回三个对象合并组成的对象,如有相同属性则会被后续参数中具有相同属性覆盖。


// 深拷贝对象
const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	love:{
		color: "blue",
		sport: "football"
	}
};
const deepClone = JSON.parse(JSON.stringify(obj)); // 返回深拷贝的对象,修改obj不会影响该对象
复制代码

Object.entries(obj) 返回对象的key和value组成的数组

Object.entries(obj) 方法返回一个对象key和value键值对组成的数组

const obj = { foo: 'bar', baz: 42 };
console.log(Object.entries(obj));
// [["foo", "bar"], ["baz", 42]] 
复制代码

obj.hasOwnProperty() hasOwnProperty 方法判断对象中属性是否存在

const obj = {
	firstname:"John",
	lastname:"Doe",
	age:50,
	love:{
		color: "blue",
		sport: "football"
	}
};
console.log(obj.hasOwnProperty('love')) // true
复制代码
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值