JavaScript 方法和 this 关键字

x33g5p2x  于2022-04-18 转载在 Java  
字(1.9k)|赞(0)|评价(0)|浏览(472)

在本教程中,您将借助示例了解 JavaScript 对象方法和 this 关键字。
    在 JavaScript 中,对象也可以包含函数。例如,

  1. // object containing method
  2. const person = {
  3. name: 'John',
  4. greet: function() { console.log('hello'); }
  5. };

在上面的示例中,person 对象有两个键( name 和 greet ),分别有一个字符串值和一个函数值。
    因此,JavaScript 方法基本上是一个具有函数值的对象属性。

访问对象方法

您可以使用点表示法访问对象方法。语法是:

  1. objectName.methodKey()

您可以通过调用 objectName 和 key 来访问属性。可以通过调用 objectName 和该方法的 key 以及()来访问该方法。例如,

  1. // accessing method and property
  2. const person = {
  3. name: 'John',
  4. greet: function() { console.log('hello'); }
  5. };
  6. // accessing property
  7. person.name; // John
  8. // accessing method
  9. person.greet(); // hello

在这里,greet 方法使用 person.greet() 访问,而不使用 person.greet 访问。
    如果您仅尝试使用 person.greet 访问该方法,它将为您提供一个函数定义。

  1. person.greet; // ƒ () { console.log('hello'); }
JavaScript 内置方法

在 JavaScript 中,有许多内置方法。例如,

  1. let number = '23.32';
  2. let result = parseInt(number);
  3. console.log(result); // 23

这里,Number 对象的 parseInt()方法用于将数字字符串值转换为整数值。
    要了解有关内置方法的更多信息,请访问JavaScript内置方法

向 JavaScript 对象添加方法

您还可以在对象中添加方法。例如,

  1. // creating an object
  2. let student = { };
  3. // adding a property
  4. student.name = 'John';
  5. // adding a method
  6. student.greet = function() {
  7. console.log('hello');
  8. }
  9. // accessing a method
  10. student.greet(); // hello

在上面的示例中,创建了一个空的 student 对象。然后,添加 name 属性。类似地,还添加了 greet 方法。通过这种方式,可以向对象添加方法和属性。

JavaScript this 关键字

要从同一对象的方法中访问对象的属性,需要使用 this 关键字。让我们考虑一个例子。

  1. const person = {
  2. name: 'John',
  3. age: 30,
  4. // accessing name property by using this.name
  5. greet: function() { console.log('The name is' + ' ' + this.name); }
  6. };
  7. person.greet();

输出

  1. The name is John

在上面的示例中,创建了一个 person 对象。它包含属性(name 和 age)和方法 greet。
    在方法 greet 中,当访问该对象的属性时,使用关键字 this。
    为了访问对象的属性,在 this 关键字之后使用 . 和关键字。
    注意:在 JavaScript 中,当与对象的方法一起使用时,this 关键字指的是对象。this 已绑定到对象。
    然而,对象内部的函数可以以与普通函数类似的方式访问其变量。例如,

  1. const person = {
  2. name: 'John',
  3. age: 30,
  4. greet: function() {
  5. let surname = 'Doe';
  6. console.log('The name is' + ' ' + this.name + ' ' + surname); }
  7. };
  8. person.greet();

输出

  1. The name is John Doe

上一教程 :JS Object                                         下一教程 :JS Constructor Function

参考文档

[1] Parewa Labs Pvt. Ltd. (2022, January 1). Getting Started With JavaScript, from Parewa Labs Pvt. Ltd: https://www.programiz.com/javascript/methods

相关文章

最新文章

更多