js 函数的参数声明中用 var 与不用 var的区别?

看清问题!是函数声明中的参数 !!!!!!!!!!!!!!!!

function abc(var a){}
function def(a){}

哆啦的时光机
浏览 1059回答 4
4回答

蓝山帝景

这里有一个地方需要注意,函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!test();function test(){i=1;}alert(i);你试试,i前面加 var 和不加时候的区别就知道了.

德玛西亚99

JavaScript是弱类型语言在声明变量时 不需要注明变量类型但是请在声明变量的时候写var 这样代码比较规范还涉及一个静态变量的问题。

www说

没错 JavaScript是语言强度比较弱,可以声明也可不声明。不管是 参数声明 还是 变量的声明 都是一样的,都是因为JavaScript是语言强度问题,说到 区别 在作用方面是没有的,但是 还是推荐 声明的好,按严禁的 语法 规范写,变量 不容易混乱,而且 作用范围 也很清晰。

噜噜哒

var 声明的变量,作用域是当前 function没有声明的变量,直接赋值的话, 会自动创建变量但作用域是全局的.//-----------------function doSth() {a = "AAA";}doSth(); // 执行一次 doSthalert(a); // 可以看到 "AAA"//-----------------如果用了 var//-----------------function doSth() {var a = "AAA";}doSth(); // 执行一次 doSthalert(a); // 出错!!! 变量未定义, 因为 doSth 中声明的变量作用域只是 doSth 函数.//-----------------另外,如果 函数套函数,还会使情况变得更加复杂--------------------------------------------------------函数定义中,声明的函数参数作用域都是函数本身的如果,在参数声明中出现 var , 属于语法错误
打开App,查看更多内容
随时随地看视频慕课网APP