xugy0926 / getting-started-with-javascript

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

var声明一个变量,后面的值可以是1,可以是['v'],为什么不可以是v?

huyong007 opened this issue · comments

问题以一,如题
问题二:
function run(callback){
console.log('huyong is running');
}
var m = v;
run(m);
//给出v is not defined,如果用
if(!v) {v = 1};
//我该把if 放在哪边呢?

我的目的就是为了输出结果,但是定义为v无法输出结果,这是牵扯到哪个方面的知识点呢?

@huyong007 这个题目我的理解是变量的作用域导致的,如果v不在外面进行声明,那么v的范围就是在大括号内有效,解决的办法如下,供参考
function run(callback){
console.log(callback);
console.log('huyong is running');
}
var v;
if(!v) {v = 1};
var m = v;
run(m);