Согласно спецификации ES5.1, программа "use strict;" "foo".bar = 42;
"use strict;" "foo".bar = 42;
вызывает создание объекта String
, присваивает ему свойство и затем удаляет объект, что не приводит к наблюдаемым эффектам, включая любые исключения. (Отсутствие эффекта можно подтвердить, попробовав его в ES5-совместимой реализации JS, как в Opera 12.)
В современных реализациях JS он вместо этого TypeError
- попробуйте:
"use strict"; "foo".bar = 42;