Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“不写作”;var";JavaScript中的新变量之前_Javascript_Variables - Fatal编程技术网

“不写作”;var";JavaScript中的新变量之前

“不写作”;var";JavaScript中的新变量之前,javascript,variables,Javascript,Variables,我只是在学习JavaScript,我不明白为什么下面的代码不会产生错误: myTest = 5; function addFifteen(num) { return num+15; } document.write(addFifteen(myTest)); 为什么在“myTest”之前不需要“var”?如果它在没有“var”的情况下运行,那么编写它的目的是什么?当您没有在变量前面指定一个var时,它仍然是有效的javascript。这就是它不会产生错误的原因。但是,作为最佳实践,您应该

我只是在学习JavaScript,我不明白为什么下面的代码不会产生错误:

myTest = 5;
function addFifteen(num) {
    return num+15;
}
document.write(addFifteen(myTest));

为什么在“myTest”之前不需要“var”?如果它在没有“var”的情况下运行,那么编写它的目的是什么?

当您没有在变量前面指定一个
var
时,它仍然是有效的javascript。这就是它不会产生错误的原因。但是,作为最佳实践,您应该避免这种情况,因为这样声明的变量会被标记到全局范围
窗口

这样声明太多的变量/函数被认为是“污染”了您的全局范围,不被认为是良好的编程实践


相当于globalObject.myTest。。。在浏览器中,这将是
window.myTest
。。。这是Javascript 101,您应该在第一课中学习:p-read您可以使用'use strict'并在strict模式下运行JS。要了解更多信息: