0

var user = {
  name: 'Василий',

sayHi: function() { alert( this.name ); } };

user.sayHi();

Чтобы функция получила доступ к свойству в объекта нужно прописать this а зачем если есть скрытое свойство [[scope]] ?

xes
  • 493
  • потому что это разные вещи –  Jan 18 '19 at 20:03
  • с чего ты взял, что есть скрытое свойство [[scope]]? Даже если предположить, что оно есть - оно потому и скрытое, что напрямую из кода к нему нет доступа – Grundy Jan 18 '19 at 20:54
  • @Grundy при объявлении функции создается скрытое свойство [[scope]; написано ведь если функция не находит переменную в своем окружении она ищет в окруженнии в котом она создана] – xes Jan 18 '19 at 20:59
  • @xes, при объявлении функции создается скрытое свойство [[scope]]; - с чего ты взял? – Grundy Jan 18 '19 at 21:01
  • @Grundy https://learn.javascript.ru/object-conversion При создании функция получает скрытое свойство [[Scope]], которое ссылается на лексическое окружение, в котором она была создана. – xes Jan 18 '19 at 21:04
  • Вот именно что на лексическое окружение, а не на поля объекта. name не относится к лексическому окружению – andreymal Jan 18 '19 at 21:06
  • @andreymal тогда своими словами скажите что значит лексическое окружение – xes Jan 18 '19 at 21:07
  • @xes зачем своими словами, если на том же сайте всё написано https://learn.javascript.ru/closures – andreymal Jan 18 '19 at 21:09
  • @xes, там все устарело: http://www.ecma-international.org/ecma-262/ - в спецификации ничего нет про [[scope]] – Grundy Jan 18 '19 at 21:10
  • @Grundy еще бы ты подвез знание английского :)) – xes Jan 18 '19 at 21:11
  • @xes, можешь поиском поискать - нет никакого упоминания – Grundy Jan 18 '19 at 21:12
  • @Grundy так и быть поверю ВАМ на слово :)) – xes Jan 18 '19 at 21:12
  • @andreymal чтобы лучше понять – xes Jan 18 '19 at 21:13
  • @Grundy а вот alert( [] == [] ); // false можете прояснить ? – xes Jan 18 '19 at 22:15
  • @xes, ты уже задавал такой вопрос, смотри алгоритм сравнения – Grundy Jan 19 '19 at 06:17
  • @Grundy а можно как-нибудь проще для тупых ? – xes Jan 19 '19 at 16:47

0 Answers0