Как перейти к объектному методу в javascript - PullRequest
2 голосов
/ 07 августа 2020

let person = {
  firstName: "Rella",
  lastName: "binson",
  age: 18,
  getFullName: function() {
    return this.firstName + ' ' + this.lastName;
  }
};

for (let key in person) {
  if (person.hasOwnProperty(key)) {
    console.log(key + ' ' + person[key])
  }
}
// it doesn't print 'getFullName()

Ответы [ 2 ]

4 голосов
/ 07 августа 2020

Рассмотрите возможность использования свойства получения:

let person = {
  firstName: "Rella",
  lastName: "binson",
  age: 18,
  get getFullName() {
    return this.firstName + ' ' + this.lastName;
  }
};

for (let key in person) {
  if (person.hasOwnProperty(key)) {
    console.log(key + ' ' + person[key])
  }
}

Ссылка: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get

0 голосов
/ 07 августа 2020

Вот еще один способ сделать это с помощью современного метода Object.keys () и собрать их в массив

let person = {
  firstName: "Rella",
  lastName: "binson",
  age: 18,
  getFullName: function() {
    return this.firstName + ' ' + this.lastName;
  }
}

const objectMethods = Object.keys(person).filter(item => {
  person.hasOwnProperty(item) &&
  typeof person[item] === 'function'
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...