function foo() {
// var m=100//not defined报错
m = 100
}
foo()
console.log(m)
1、如果在函数中声明一个变量,全局作用域中并没有声明,在调用函数之后打印m结果会是not defined报错
2、未定义m却给m赋值在调用函数之后打印m结果会是100 这是因为js引擎会默认m定义在全局里的,直接把m当成全局变量定义了(放到全局了)
function foo() {
// var m=100//not defined报错
m = 100
}
foo()
console.log(m)
1、如果在函数中声明一个变量,全局作用域中并没有声明,在调用函数之后打印m结果会是not defined报错
2、未定义m却给m赋值在调用函数之后打印m结果会是100 这是因为js引擎会默认m定义在全局里的,直接把m当成全局变量定义了(放到全局了)