Я просто столкнулся с каким-то странным поведением, используя VSCode, пишущий JS файл.
Смотрите, что я пытаюсь получить доступ к hasOwnProperty()
на пушистом объекте. И VSCode не автозаполнял и не предлагал ничего на моей строке кода.
На данный момент я уже думаю, что я делаю что-то неправильно и что, вероятно, я не могу получить доступ к этому методу через свой объект.
Но самое интересное:
ВОПРОС:
Как только финишная печать hasOwnProperty и я открываю скобки, VSCode запускает IntelliSense и распознает метод. Это нормально? Почему VSCode не показывает мне все свойства и методы, доступные для моего объекта, начиная с первой буквы, которую я набрал?
Заранее спасибо за помощь.
VSCode О: Версия: 1.25.1 Дата: 2018-07-11T15: 43: 53.668Z Электрон: 1.7.12 Chrome: 58.0.3029.110 Node.js: 7.9.0 V8: 5.8.283.38 Архитектура: x64
Да, это ожидается. Мы не показываем предложения intellisense для свойств Object.prototype
потому что они будут отображаться практически для каждого объекта и поэтому не очень полезны. Однако hasOwnProperty
языка знают, что hasOwnProperty
существует, поэтому вы получаете hasOwnProperty
для него