函数一:
function foo() {
var count = 0;
}
console.log(count) //undefined
函数二:
function foo() {
}
foo.count = 0;
console.log(count) // 0
这两个count我自己试验了一下,我的理解是:函数一中的count是函数内作用域定义的变量,函数外访问不到,而函数二我的理解是也在foo内定义了一个变量,却在全局作用域中能够访问。
请问我的理解错误在哪里,请纠正;
请问这两个count有什么区别,在实际用途中又有何意义?
你找错实验属性了,window中有count属性,所以你能打印到count的值,正常的话应该会报错
函数一的理解是正确的,函数外访问不到函数内定义的变量
函数二:函数也是对象,也是可以具有属性的,函数内的变量,函数属性,全局属性,这三者是不一样的
这三个count根本不是同一个变量