数组中带有变量的多个提示,是否可能?

时间:2017-08-01 19:04:00

标签: javascript arrays loops prompt

var arr[2];
  for(i=0; i<arr.length; i++) {
  arr[i] = prompt() * 1;
}

但是我想知道你可以像var arr = [x,y,z] = [1,2,3];那样做,你可以为&#34; x,y,z&#34;做一个循环。提示?

3 个答案:

答案 0 :(得分:2)

只需创建一个包含prompt的数组并将其分配给变量:

&#13;
&#13;
var prompts = [
  prompt('0', '0'),
  prompt('1', '1'),
  prompt('2', '2'),
];
var [x, y, z] = prompts;
console.log(x, y, z);
&#13;
&#13;
&#13;

答案 1 :(得分:2)

您也可以使用Array()构造函数和Array#map()来完成此操作。 Array#fill()是必要的,以便让map遍历整个数组:

var [x, y, z] = Array(3).fill().map(prompt).map(Number)

console.log(x, y, z)

此方法使用destructuring assignment语法。

答案 2 :(得分:0)

您无法在数组中存储变量引用,您可以将变量存储在对象中,但是:

&#13;
&#13;
var x;
var y;
var z;
var arr = {
  x,
  y,
  z
};
for (key in arr) {
  arr[key] = prompt() * 1;
}
console.log(arr);
&#13;
&#13;
&#13;