
JavaScript对象方法简介
今天,我们将讨论 "JavaScript对象方法"。所以,让我们先把文章的名字分成三部分,即JavaScript、对象和方法。分别弄清楚每一个词会让我们对需要讨论的主题有一个清晰的概念。因此,JavaScript是一种编程或脚本语言,它允许在网页上实现复杂的要求,并被设计成简单的基于对象的语言,其中对象是一个键值对的属性集合;方法是可以在对象上执行的操作。因此,JavaScript对象方法是JavaScript中的方法,可以使用函数来访问。在这里,JavaScript中的函数被存储为值。这里的对象可以不使用()括号来调用。
语法
objectName.methodName()
在方法中,"this "关键字被用来指代所有者对象。
- **objectName。**这指的是为调用其方法而创建的对象的名称。
- **methodName。**这指的是为该特定对象创建的方法名,可以使用objectName来调用。
一个函数可以被划分为不同的属性,然后可以组合并返回。
让我们考虑一个有一些属性的对象的例子,如下所示。
雇员是一个函数,它由以下属性组成
- employeeName
- employeeID
- employeeCubicle
- employeeDivision
这个函数将返回方法/函数作为对象属性
在我们进入JavaScript对象方法的一些图解之前,让我们先看看在这里起着重要作用的'this'关键字。
this "关键字在JavaScript中被广泛使用,但在JavaScript中仍然是一个令人困惑的关键字。this "关键字将指向一个特定的对象。它是由一个函数的调用方式决定的。让我们考虑一下上面的Employee例子,看看如何使用'this'关键字访问对象的属性。
JavaScript对象方法的例子
下面提到了不同的例子。
例一
this 关键字的说明
代码
<!DOCTYPE html> <html> <body> <h2><i>this</i> Keyword</h2> <p>Here <b>this</b> is representing <b>employee</b> object.</p> <p>As the employee object "owns" the employer method.</p> <p id="demo"></p> <script> var employee = { employeeName: "Karthick", employeeId : "101", employeeCubicle : "B108", employeeDivision : "BCMS", employer : function() { return this.employeeName + " of ID " + this.employeeId + " sits in " + this.employeeCubicle; } }; document.getElementById("demo").innerHTML = employee.employer(); </script> </body> </html>
输出

在上面的例子中,'this'是一个雇员对象,它有一个雇主的函数()。换句话说,this.employeeName意味着这个对象的employeeName属性。
例二
代码
<!DOCTYPE html> <html> <body> <h2>Sample Example for illustrating function definition as property value</h2> <p>JavaScript Object Method</p> <p>patientDetails is a function definition, it is stored as one of the property value in patient object</p> <p id="demo"></p> <script> var patient = { patientName: "Cyrus", patientId : "HSP104", patientSection : "ICU", patientDetails : function() { return this.patientName + " of ID " + this.patientId + " is in " + this.patientSection; } }; document.getElementById("demo").innerHTML = patient.patientDetails(); </script> </body> </html>
输出

例三
代码
<!DOCTYPE html> <html> <head> </head> <body> <h2>JavaScript Object Method</h2> <p> childDetails is a function definition stored as a property value. </p> <p> Storing property values and retrieving without using brackets () </p> <p id="demo"></p> <script> var children = { childName: "Rohit", childAge : "6 months", childWeight : "1.5KG", childDetails : function() { return this.childName + " of " + this.childAge + " weighs only " + this.childWeight + " "; } }; document.getElementById("demo").innerHTML = children.childDetails; </script> </body> </html>
输出

例四
代码
<!DOCTYPE html> <html> <head> </head> <body> <h3>JavaScript Object Method</h3> <p> patientDetail is a function definition, stored as a property value, accessing with additional details </p> <p id="demo"></p> <script> var patient = { patientName: "Cyrus", patientId : "HSP104", patientSection : "ICU", patientDetails : function() { return this.patientName + " of ID " + this.patientId + " is in " + this.patientSection; } }; document.getElementById("demo").innerHTML = "PATIENT " + patient.patientDetails(); </script> </body> </html>
输出

我们还有一些其他的对象方法,让我们深入研究一下。
- **create()。**它有额外的功能来选择一个新的对象原型。
let Obj = Object.create(obj);
- **keys()。**创建一个带有对象键的数组。
例五
代码
<!DOCTYPE html> <html> <head> </head> <body> <h3>JavaScript Object.keys() Method</h3> <script> const employer = { boss: 'ABC', PA: 'XYZ', salesMan: 'DEF', consultant: 'GHI' }; const keys = Object.keys(employer); document.write(keys); </script> </body> </html>
输出

- **values():**创建一个包含对象的值的数组
例六
代码
<!DOCTYPE html> <html> <head> </head> <body> <h3>JavaScript Object.values() Method</h3> <script> const employer = { boss: 'ABC', PA: 'XYZ', salesMan: 'DEF', consultant: 'GHI' }; const values = Object.values(employer); document.write(values); </script> </body> </html>
输出

- **entries():**给出一个由键:值对组成的嵌套数组。
例七
代码
<!DOCTYPE html> <html> <head> </head> <body> <h3>JavaScript Object.values() Method</h3> <script> const employer = { boss: 'ABC', PA: 'XYZ', salesMan: 'DEF', consultant: 'GHI' }; const entries = Object.entries(employer); entries.forEach(entry => { let key = entry[0]; let value = entry[1]; document.write(`${key}: ${value}` + ", "); }); </script> </body> </html>
输出

- **freeze()。**这个方法可以防止修改一个对象的值和属性,防止被添加或删除一个对象
- **seal()。**这个方法可以防止新的属性被添加到对象中,但会修改现有的属性。
总结
至此,我们可以结束 "JavaScript对象方法 "这篇文章了。说明了一些例子,并经历了JavaScript对象方法,如.freeze()、.seal()、.key()、.values()、.entry()、.create()。研究了 "this "关键字的重要性,这是JavaScript中检索对象属性的主要因素之一。JavaScript对象有一些有用的方法来修改、迭代自身和保护;我们在这里给出了一个清晰的例子,即迭代对象的键/值对。