зачем использовать функцию для определения свойства?

#javascript

#javascript

Вопрос:

я читал о. defineProperty()

но я нашел это обозначение в программе, которую я не понимаю:

 myObject.defineProperty("something", "propertyNameExample", function()
{
// function body here
})
  

чего я не понимаю, так это function() {...} обозначения.

какую роль она играет для «propertyNameExample»?

пожалуйста, объясните мне. Спасибо

Комментарии:

1. Это функция. Может быть, сделать шаг назад и изучить некоторые основы JS, в частности, то, как функции могут быть (а) анонимными и (б) передаваться как значения, было бы хорошей идеей.

2. Что defineProperty это за метод? Покажите нам код, который создает / определяет myObject .

Ответ №1:

Ничего (или технически не уверен), это не собственный метод для определения свойства в Javsacript.

Здесь есть две ошибки

  • Это Object.defineProperty не должно быть myObject.defineProperty
  • myObject.defineProperty будет определяемой пользователем функцией, а не встроенной функцией.

Согласно документации, третий аргумент — это объект-дескриптор, а не a function .

Даже если вы передаете функцию в качестве параметра, это никак не влияет на функциональность, независимо от того, устанавливаете ли вы свойство или получаете свойство.

Комментарии:

1. Код, который показал OP, вообще не похож Object.defineProperty

2. @Bergi это правда, это выглядит как более настраиваемый метод, чем собственный Object.defineProperty