ES6 是现代 JavaScript 的标准之一,其添加了大量新的功能和方法来优化开发者的代码编写流程,包括了对对象的新方法的增加。在本文中,我们将介绍 ES6 中新增的对象方法,包括其使用场景、语法和示例代码。
ES6 新增对象方法
- Object.keys()
这个方法返回一个由对象的属性名组成的数组,这些属性名是自身的(不包括原型链上的属性,仅包括 enumerable 属性)。该方法的使用方式如下:
const obj = { name: 'Tom', age: 18, gender: 'male' }; console.log(Object.keys(obj)); // ['name', 'age', 'gender']
- Object.values()
这个方法返回一个由对象的属性值组成的数组,该数组和 Object.keys() 方法返回的数组一一对应。该方法的使用方式如下:
const obj = { name: 'Tom', age: 18, gender: 'male' }; console.log(Object.values(obj)); // ['Tom', 18, 'male']
- Object.entries()
这个方法返回一个由数组组成的数组,其中每个数组的第一个元素是对象的属性名,第二个元素是该属性的值。该方法的使用方式如下:
const obj = { name: 'Tom', age: 18, gender: 'male' }; console.log(Object.entries(obj)); // [['name', 'Tom'], ['age', 18], ['gender', 'male']]
- Object.assign()
这个方法用于将一个或多个源对象的属性复制到目标对象上,后覆盖前。该方法的使用方式如下:
const target = { a: 1, b: 2 }; const source = { b: 4, c: 5 }; Object.assign(target, source); console.log(target); // {a:1, b:4, c:5}
- Object.freeze()
这个方法用于冻结一个对象,使其属性不可被修改、删除或添加。该方法的使用方式如下:
-- -------------------- ---- ------- ----- --- - - ----- ------ ---- --- ------- ------ -- ------------------- -- ------- ------- - --- ------ --------- --------- - ----------
使用场景
- Object.keys()
该方法适用于需要遍历对象属性的场景,如获取对象属性名、用于筛选属性等。
- Object.values()
该方法适用于需要获取对象属性值的场景,如获取对象属性值用于响应数据等。
- Object.entries()
该方法适用于需要以数组形式获取对象属性值的场景,如将对象转为数组、在需要同时获取对象属性和值的场景等。
- Object.assign()
该方法适用于需要合并多个对象的场景,如将一个基础设置对象和用户保存的设置对象合并成一个新的设置对象。
- Object.freeze()
该方法适用于需要保证某个对象属性不被修改、删除或添加的场景,如防止误操作或防止数据被篡改。
总结
ES6 新增的对象方法为我们的开发提供了更加方便的方法,可以帮助我们优雅地完成一些重复性的工作,提高开发效率。以上是 ES6 新增的对象方法及使用场景的介绍,希望对大家有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/646ec805968c7c53b0d1a37c