我正在尝试创建一个包含三个变量的数组序列。 有一个触发创建数组的动作,该数组从三个不同的HTML文本框中获取信息。
这个想法是这样的: - 触发器 - 创建array0 - 从每个文本框中收集数据a,b和c。 - 提醒
- 触发器 - 创建array2 等等。
我尝试使用以下代码:
function sarasa() {
window['p' + i] = new Array(document.getElementById("condition").value,
document.getElementById("startcondition").value,
document.getElementById("endcondition").value);
i++;
alert (p1[0]);
alert (p0[1]);
alert (p0[2]);
alert (p1[0]);
alert (p1[1]);
alert (p1[2]);
}
最后的警报是查看代码是否正常工作。
我最大的问题是我不确定我是否真正实现了数组的替代命名。有什么想法吗?
答案 0 :(得分:0)
这样的事情:
var myArray = [];
function sarasa() {
var current = {condition: document.getElementById("condition").value,
startCondition: document.getElementById("startcondition").value,
endCondition: document.getElementById("endcondition").value};
myArray.push(current); //or unshift()
alert("Condition: " + current.condition +
", start: " + current.startCondition +
", end: " + current.endCondition );
}
不同之处在于myArray,对象数组,是在函数外部定义的,因此可以通过重复调用函数来编辑它的值。调用该函数时,这些字段的值将添加到对象中,并使用.push()
函数添加到myArray。然后,警报以更易读的格式输出数组值。
输出完整数组只需要在其上循环并使用类似的警报方法。