У меня возник вопрос о функциях JavaScript. Я читаю функции как объекты, где мы можем добавлять свойства и методы к функциям, но я замечаю странное поведение, когда я выхожу из функции с добавленным свойством. Вот небольшой пример, который я взял с объектом и функцией.Функции JavaScript как объекты
//Object Example
var obj = {
firstName: 'John',
lastName: 'Doe',
};
obj.address = '111 Main St. New York, NY';
console.log(obj); // Object {firstName: "John", lastName: "Doe", address: "111 Main St. New York, NY"}
//Function Example
function myFunction() {
console.log('Hello World');
}
myFunction.greet = 'Hello JavaScript!';
console.log(myFunction); // function myFunction() { console.log('Hello World');}
Как и ожидалось, «здороваться» имущество было добавлено MYFUNCTION, но когда я выйти из MYFUNCTION Делаю не вижу свойство распечатывания. Зачем? Где добавлено свойство? Принимая во внимание, что когда я получаю доступ к свойству с помощью оператора точки, я вижу, что результат завершается.
Может ли кто-нибудь объяснить, где было добавлено свойство и где оно хранится?
Недвижимость есть, вы просто не видите ее с помощью 'console.log'. Различные браузеры будут отображаться по-разному. – 4castle