我是JavaScript新手。在以下代码段(来自here)中,[], hash
语法是什么意思?我搜索了一下但没有运气。
function getUrlVars()
{
var vars = [], hash;// <============= HERE
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
答案 0 :(得分:4)
这只是多个变量的正常声明
var vars = [], hash;
与
相同var vars = [];
var hash;
<强>语法:强>
var varname1 [= value1 [, varname2 [, varname3 ... [, varnameN]]]];
答案 1 :(得分:1)
当您应该查看整行时,您正在查看[], hash
,这是:
var vars = [], hash;
完整地,您有一个变量声明,它以逗号分隔的变量名列表。这些名称为vars
和hash
,其格式更好:
var vars,
hash;
在该声明中,您有vars
变量的变量赋值。
[]
是JavaScript中的数组文字。所以最后你声明了vars
,用一个新的空数组的值初始化它,并声明hash
而没有初始化它(值将是undefined
)。
答案 2 :(得分:0)
该代码只是结合了这两个概念,使新手无法理解代码:
1。 声明数组有两种方法:
// 1 (old school)
var myArray = new Array();
// 2 (the easiest and most common)
var myArray = [];
2。 您可以使用逗号声明多个变量(有或没有设置它们的值):
// Declaring 3 variables
var a, b, c;
// or
var a=1, b=2, c=3;