加入收藏 | 设为首页 | 会员中心 | 我要投稿 济宁站长网 (https://www.0537zz.cn/)- 行业智能、边缘计算、专有云、AI硬件、5G!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

如何在JavaScript中使用对象的方法

发布时间:2019-04-24 04:06:13 所属栏目:优化 来源:joking_zhang
导读:介绍 JavaScript 中,对象是 键/值 对的集合。值可以包含属性和方法,并且可以包含所有其他 JavaScript 数据类型,例如字符串,数字和布尔值。 JavaScript中的所有对象都来自父 Object 的构造函数。Object 为我们提供了很多实用的内置方法,并且可以在单个
副标题[/!--empirenews.page--]

 如何在JavaScript中使用对象的方法

介绍

JavaScript 中,对象是 键/值 对的集合。值可以包含属性和方法,并且可以包含所有其他 JavaScript 数据类型,例如字符串,数字和布尔值。

JavaScript中的所有对象都来自父 Object 的构造函数。Object 为我们提供了很多实用的内置方法,并且可以在单个对象中直接使用。不同于 数组的原型方法 例如 sort() 和 reverse() 只能被数组实例使用,对象方法直接来自 Object 构造函数,并使用对象实例作为参数。这称为静态方法。

本教程将介绍重要的内置对象方法,下面的每个部分都涉及特定方法并提供使用示例。

前提

为了充分利用本教程,您应该熟悉创建,修改和使用对象,您可以在“ 了解JavaScript中的对象 ”一文中查看这些对象。

有关JavaScript的其他指导,您可以查看“ JavaScript 如何编码 ”系列。

Object.create()

Object.create() 方法用于创建一个新对象,并将其链接到现有的对象原型。

我们可以创建一个job对象实例,并将其扩展为更具体的对象。

  1. // Initialize an object with properties and methods  
  2. const job = {  
  3. position: 'cashier',  
  4. type: 'hourly',  
  5. isAvailable: true,  
  6. showDetails() {  
  7. const accepting = this.isAvailable ? 'is accepting applications' : "is not currently accepting applications";  
  8. console.log(`The ${this.position} position is ${this.type} and ${accepting}.`);  
  9. }  
  10. };  
  11. // Use Object.create to pass properties  
  12. const barista = Object.create(job);  
  13. barista.position = "barista";  
  14. barista.showDetails();  
  1. Output  
  2. The barista position is hourly and is accepting applications.  

barista 对象现在有一个 position 属性 - 但是所有其他属性和方法都可以通过 job 的原型获得。通过Object.create()来实现最小化重复,对于保持代码DRY十分有效。

Object.keys()

Object.keys() 会创建一个包含对象键的数组。

我们可以创建一个对象并打印键的数组。

  1. // Initialize an object  
  2. const employees = {  
  3. boss: 'Michael',  
  4. secretary: 'Pam',  
  5. sales: 'Jim',  
  6. accountant: 'Oscar'  
  7. };  
  8. // Get the keys of the object  
  9. const keys = Object.keys(employees);  
  10. console.log(keys);  
  1. Output  
  2. ["boss", "secretary", "sales", "accountant"]  

Object.keys() 还可用于迭代对象的键和值。

  1. // Iterate through the keys  
  2. Object.keys(employees).forEach(key => {  
  3. let value = employees[key];  
  4. console.log(`${key}: ${value}`);  
  5. });  
  1. Output  
  2. boss: Michael  
  3. secretary: Pam  
  4. sales: Jim  
  5. accountant: Oscar  

for-in 循环和Object.keys()返回的可枚举属性有一个区别:

for-in 循环同时也会遍历原型属性

Object.keys() 只会返回自有(实例)属性

Object.keys() 对于检查对象的长度也很有用。

  1. // Get the length of the keys  
  2. const length = Object.keys(employees).length;  
  3. console.log(length);  
  1. Output  
  2. 4  

使用该 length 属性,我们能够计算employees包含4个自有属性。

Object.values()

Object.values() 创建一个包含对象值的数组。

  1. // Initialize an object  
  2. const session = {  
  3. id: 1,  
  4. time: `26-July-2018`,  
  5. device: 'mobile',  
  6. browser: 'Chrome'  
  7. };  
  8. // Get all values of the object  
  9. const values = Object.values(session);  
  10. console.log(values);  
  1. Output  
  2. [1, "26-July-2018", "mobile", "Chrome"]  

Object.keys()和Object.values()允许您从对象返回数据。

Object.entries()

(编辑:济宁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读