我正在尝试查明以下代码是否始终有效(在JavaScript的所有实现中)以及是否有使用它的任何问题:
var query = window.location.search.substring(1),
vars = query.split('&');
基本上,JS引擎是否总是按照JS中定义的顺序处理变量?
我在其他地方使用查询变量,否则我只是将变量定义为
var pairs = window.location.search.substring(1).split('&');
一般来说,是否存在关于定义变量和一次为其赋值的“关注点”,特别是涉及更复杂的赋值?
答案 0 :(得分:0)
使用多个变量没有坏处。你可以声明并分配它。只有在需要时进行复杂的赋值声明时,请记住这一点。
答案 1 :(得分:0)
没有任何顾虑,你可以在定义时使用它 - 没有问题。 JavaScript提升变量。无论何时定义变量,它都会将其移动到当前函数的顶部。为了说明
(function(){
foobar = 3; // doesn't throw, since foobar was in a var statement, although it's later
if(false){
var foobar = 5;
}
})();