存储值的Javascript数组

Javascript arrays storing values

本文关键字:数组 Javascript 存储      更新时间:2023-09-26

我的问题可能有一个非常简单的解决方案,但就是找不到,所以请帮助我以最简单的方式找到解决方案。。。

这里的问题是,我的数据以表格形式显示。每行有5列,其中一列显示多个值,这就是为什么我需要用类似行[1]['value1']、行[1][`value2']&然后是第[2]['value1']行、第[2]['value2']行。

我申报阵列

var parray = [[],[]];

我想把这些值存储在一个循环中,比如这个

for(counter = 0; counter < 10; counter ++){
     parray[counter]['id'] += 1;
     parray[counter]['isavailable'] += 0;
}

稍后我想循环通过这个并得到结果:

for (var idx = 0; idx < parray.length; idx++) {
    var pt = {};
    pt.id = parray[schctr][idx].id;
    pt.isavailable = parray[schctr][idx].isavailable;
}

显然它不起作用,因为Counter是一个数字键,而"id"是一个字符串键。。我的问题是我如何做到这一点??

感谢您提前给出的所有答案。

JS没有"关联数组"的概念。您有数组和对象(贴图)。数组是对象,可以放置键,但这是不可取的。

你可以从一个空白阵列开始

var parray = [];

并将对象"推入"

for(counter = 0; counter < 10; counter++){
  parray.push({
    id : 1,
    isAvailable : 0
  });
}

然后你可以从他们那里读

for (var idx = 0; idx < parray.length; idx++) {
  // Store the current item in a variable
  var pt = parray[idx];
  console.log(pt);
  // read just the id
  console.log(parray[idx].id);
}

就像我在这里做的

您想要的数组中只有一个简单的对象:

// just a regular array
var parray = [];
for(var counter = 0; counter < 10; counter++){
  // create an object to store the values
  var obj = {};
  obj.id = counter;
  obj.isavailable = 0;
  // add the object to the array
  parray.push(obj);
}

稍后:

for (var idx = 0; idx < parray.length; idx++) {
  var pt = parray[idx];
  // do something with pt
}