当你使用了一个未知的变量名,通常 JavaScript 会自动创建全局变量:
function f() { foo = 123 } f() foo 123
好在你会在 ECMAScript5 的严谨模式得到警告[1]:
function f() { 'use strict'; foo = 123 } f() ReferenceError: foo is not defined
[1] JavaScript’s strict mode: a summary