С этой страницы:
<!DOCTYPE html>
<html>
<head>
<script>
"use strict";
var foo = 2;
delete foo;
</script>
</head>
<body></body>
</html>
Консоль Firebug дает:
applying the 'delete' operator to an unqualified name is deprecated
>>> foo
ReferenceError: foo is not defined
foo
Но тогда это успешно:
>>> var bar = 2;
undefined
>>> delete bar;
true
Даже если вы закомментируете, delete foo;
чтобы сценарий не ломался, удаление bar
все еще успешно, несмотря на то, что оно "является свойством объекта Global, поскольку оно создается с помощью объявления переменной и имеет атрибут DontDelete ":
>>> foo
2
>>> delete foo
false
>>> var bar = 2;
undefined
>>> delete bar
true
Можно ли включить "строгий режим" в FireBug и/или в консоли Chrome?