javascript - 为循环构建一个带有括号中数字的变量

标签 javascript jquery for-loop

我正在开始创建我的第一个 for 循环(29 次 - 0 到 28),但数字必须放在方括号中。 我最终想要构建一串 0 和 1(零和一)。 cellData 的值始终为 0(零)或 1(一)。 我想更改 cellindex 变量的第一个数字,从 0 开始,到 28 结束。 然后对第二个数字执行相同的操作(在另一个循环中)。

[0,0]; [1,0]; [2,0]; [3,0];....... [28,0]; (First column).
[0,1]; [1,1]; [2,1]; [3,1];....... [28,1]; (Second column).

其中第一个数字代表表中的行,第二个数字代表表中的列。 这个想法是行变量可以在循环中每次增加 1。

首先我需要找到一种设置变量的方法,然后将它们组合在一起以获得变量:cellindex。
除非有更好的方法来做到这一点? 无论我尝试什么,我总是收到未定义的错误或无法读取未定义的属性“未定义”、意外的 token 等... 我在下面列出了一些我构建这个的糟糕尝试(在代码中注释)。

//var row = 0;
//var column = 0;
//var cellIndex = [row,column];
//var cellIndex = [row + "," + column];
//var cellindex = "[ + row + "," + column + ]";
//var cellindex = "[ + row + ',' + column + ]";
//var cellIndex = [+row+","+column+];
//var cellIndex = [ +row+ +','+ +column+ ]; 
var cellIndex = [0,0];
var cellData = sheet.getCellState(cellIndex);
var celldata = "";
celldata += (cellData);

console.log('Cell Data: ' + celldata);

下面的代码可以工作,但代码量很大,必须对所有 7 列重复。

我无法弄清楚,如果没有其他人知道如何使用代码构建 cellindex 值,那么我什至无法尝试循环来缩短它。

var cellIndex = [0,0];
var cellData = sheet.getCellState(cellIndex);
var celldata = "";
celldata += (cellData);

cellIndex = [1,0];
cellData = + sheet.getCellState(cellIndex);
var celldata = celldata;
celldata += (cellData);

cellIndex = [2,0];
cellData = + sheet.getCellState(cellIndex);
var celldata = celldata;
celldata += (cellData);

cellIndex = [3,0];
cellData = + sheet.getCellState(cellIndex);
var celldata = celldata;
celldata += (cellData);


//Repeat another 25 times

console.log('Cell Data: ' + celldata);

这个问题现在有了答案,感谢卢卡斯。 我可以按照我需要的格式输出每一列的数据。例如:

1,1,1,1,1,0,1,0,1,0,1,0,1,1,1,0,1,0,0,0,1,0,0,0,0,1,1,1,1

最佳答案

如果您的单元格索引从 [0,0] 到 [27,6] 也许这会有所帮助

var data ={};
for (var i=0;i<28;i++) {
    for (var j=0;j<7;j++) {
    var cellIndex = [i,j];
    if(!data["col"+j]){
    data["col"+j]=[]
    }
    var cellIndex = [i,j];
    var cellData = sheet.getCellState(cellIndex);
    data["col"+j].push(cellData)
    }   
}
console.log(data)
console.log(data.col1) // data.col1 will give you an array of column 1 values for further processing
console.log(data.col1.toString()) // this will give you a string you can copy from the console to paste elsewhere

如果您想将数据拆分为行或列,您只需在每次循环迭代结束时输出一个数组(或其他内容)即可

关于javascript - 为循环构建一个带有括号中数字的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57634672/

相关文章:

r - 用 R 计算每月返回

javascript - 从 Node.js 服务器检索数据并在 Javascript 客户端中循环时出错

javascript - 将带有 Jquery 或 Javascript 的类添加到 <a> 标记

java - 如何在 if 语句和 for 循环之外获取数组

javascript - 使用配置设置创建 jQuery 插件

javascript - 单击按钮即可切换

arrays - 在 Xcode 中 append 到 Swift 结构中的数组

javascript - 使用不同的单击事件后,jQuery 单击事件未触发

javascript - 如果值包含数组中的一个或多个

javascript - jQuery 冲突脚本