Попытка присвоить значения свойствам оконного объекта в Microsoft Edge не удалась, что отличается от поведения в Firefox и Chrome.
- В дальнейшем мне нужно будет сохранить каждое свойство окнавозражать против именования переменных? Есть ли какие-либо инструменты, которые могут помочь с этим?
- Если в будущем выпуске края добавится новое свойство к объекту окна, это нарушит существующий код?
- Хотя я подтвердил это поведение дляобъект окна, есть ли другие глобальные имена, имеющие такое поведение?
Хотя в случае, если это проблема для меня, я просто смог изменить имя моей переменной, чтобы вернуть код вв рабочем порядке, это не похоже на долгосрочное решение.
// First example
const foo = { control: 123, focus: 456, alert: 789 };
const { control, focus, alert } = foo;
console.log(control, focus, alert);
console.log(focus === window.focus);
console.log(alert === window.alert);
// Second example
const unescape = 'test';
console.log(unescape);
Что касается первого примера:
Первый файл console.log печатает 123
, 456
, 789
в Firefox и Chrome. Edge печатает элемент управления правильно, но возвращает функции для двух других параметров.
Последние два журнала печатают false
в Firefox и Chrome, при печати true
в Edge.
Относительно второго примера:
Обратите внимание, что этот простой пример указан вторым, потому что я тестировал его только в консоли браузера, тогда как первый я отметил в активном коде.
ВFirefox и Chrome, значение 'test'
хранится в unescape
. Он успешно печатается в следующей строке.
При попытке присвоить ребру unescape
получается Unspecified Error
.