我想通过功能如何使javascript函数
function sss()
{
for (i=1;i<=3;i++){
bbb(a.i)
}
}
sss();
有打电话像BBB(A1),BBB(A2),BBB(A3)...... 的JavaScript函数中的级联在上面的代码中必须有很多错误。什么应该是正确的语法?特别在bbb(a.i)中,即将'a'与变量'i'连接起来。
我想通过功能如何使javascript函数
function sss()
{
for (i=1;i<=3;i++){
bbb(a.i)
}
}
sss();
有打电话像BBB(A1),BBB(A2),BBB(A3)...... 的JavaScript函数中的级联在上面的代码中必须有很多错误。什么应该是正确的语法?特别在bbb(a.i)中,即将'a'与变量'i'连接起来。
如果我理解你的权利,没有任何语法错误,但也有其他几个:
function sss()
{
var i; // <=== Declare `i`
for (i=1;i<=3;i++){
bbb(a[i]); // <=== Use [i] to access `a[1]`, `a[2]`, etc.
}
}
sss();
注意,如果a
是正常的,非稀疏矩阵,你可能想:
for (i=0;i<=a.length;i++){
在JavaScript中,你可以使用点语法与文字(obj.foo
)访问属性,或者括号什么技术上强制转换为字符串(obj["foo"]
)语法。第二个语法就是我们通常使用的阵列,使用a[0]
,a[1]
等(这是技术上,理论上裹挟a["0"]
,a["1"]
等,因为regular JavaScript arrays aren't really arrays at all)
你也许想提一下“off by 1”thingy) – thefourtheye 2014-09-19 13:44:11
......假设通过索引访问数组是一个问题,但考虑到“将'a'与变量'i'连接起来”问题,我不太确定。 – 2014-09-19 13:45:01
@thefourtheye:假设'a'是一个数组...... – 2014-09-19 13:46:44
我不是100 %肯定你的意图,但重新读你的问题几次,我想你想建立一个字符串的迭代器变量i
传递到bbb()
。如果是这样,你想要这样的:
function sss() {
for (var i = 1; i <= 3; i++) {
bbb("a" + i);
}
}
这将有效地做到:
bbb("a1");
bbb("a2");
bbb("a3");
还要注意i = 1
出台前的var
- 你绝对不希望意外创建全局循环变量。
雅,这是我的意图。 – 2014-09-19 14:19:01
JavaScript的字符串连接运算符是'+'。 – 2014-09-19 13:42:59
'a + i'将在变量'a'和'i'之间进行字符串连接。你在问什么? – 2014-09-19 13:43:00
具有动态命名变量是一个标志,您应该使用数组或对象。 – 2014-09-19 13:46:48