加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

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

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

Object.freeze() 防止修改对象的属性和值,并防止在对象中添加或删除属性。

  1. // Initialize an object  
  2. const user = {  
  3. username: 'AzureDiamond',  
  4. password: 'hunter2'  
  5. };  
  6. // Freeze the object  
  7. const newUser = Object.freeze(user);  
  8. newUser.password = '*******';  
  9. newUser.active = true;  
  10. console.log(newUser);  
  1. Output  
  2. {username: "AzureDiamond", password: "hunter2"}  

在上面的例子中,我们试图重写密码用*******覆盖hunter2,但password的值能保持不变。我们还尝试添加一个新属性active,但没有添加。

Object.isFrozen() 可用于确定对象是否已冻结,并返回布尔值。

Object.seal()

Object.seal()阻止将新属性添加到对象,但允许修改现有属性。这种方法类似于Object.freeze()。在实现下面的代码之前刷新控制台以避免错误。

  1. // Initialize an object  
  2. const user = {  
  3. username: 'AzureDiamond',  
  4. password: 'hunter2'  
  5. };  
  6. // Seal the object  
  7. const newUser = Object.seal(user);  
  8. newUser.password = '*******';  
  9. newUser.active = true;  
  10. console.log(newUser);  
  1. Output  
  2. {username: "AzureDiamond", password: "*******"}  

新active属性未添加到密封对象,但password属性已成功更改。

Object.isSealed() 可用于确定对象是否已封闭,并返回布尔值。

Object.getPrototypeOf()

Object.getPrototypeOf()用于获取[[Prototype]]对象的内部隐藏,也可通过 __proto__ 属性访问。

在这个例子中,我们可以创建一个可以访问Array原型的数组。

  1. const employees = ['Ron', 'April', 'Andy', 'Leslie'];  
  2. Object.getPrototypeOf(employees);  
  1. Output  
  2. [constructor: ƒ, concat: ƒ, find: ƒ, findIndex: ƒ, pop: ƒ, …]  

我们可以在该原型输出中看到employees数组访问pop,find以及其他数组原型方法。我们可以通过测试employees原型来证实这一点Array.prototype。

  1. Object.getPrototypeOf(employees) === Array.prototype;  
  1. Output  
  2. true  

此方法可用于获取有关对象的更多信息或确保它可以访问另一个对象的原型。

还有一种相关Object.setPrototypeOf()方法将一个原型添加到另一个对象。建议您使用Object.create(), 因为它更快,性能更高。

结论

对象有许多有用的方法可以帮助我们修改,保护和迭代它们。在本教程中,我们回顾了如何创建和分配新对象,迭代对象的键和/或值,以及冻结或密封对象。

如果您需要查看JavaScript对象,可以阅读“了解 JavaScript中的对象” 。如果您想熟悉原型链,可以查看“ 了解JavaScript中的原型和继承”。

【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:核心网)

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

热点阅读