我试图找到一种方法来在javascript中的关联数组中添加值,以便使用Google表格脚本编辑器创建邮件合并程序(每个关联数组对应不同的行)数据,与列标题对应的键)。以下代码提供了我想要做的简化示例。
var testArray = [{"firstEntry":14, "secondEntry":5, "thirdEntry":3}, {"firstEntry":20, "secondEntry":15, "thirdEntry":7}];
function tester(testArg) {
var total = 0;
for (var i = 0; i < testArg.length; ++i) {
total += testArg[i].secondEntry;
}
return(total);
}
虽然上面的代码有效,但它不是很通用 - 如果我想添加对应于不同键的值,我将不得不编写一个新函数。 (上面示例中未包含的复杂因素是该函数还应仅添加某些数据行的值 - 这使得无法简单地在电子表格本身中添加值)。
所以,我的问题是:是否可以将密钥本身作为参数传递?我尝试使用类似下面编写的代码,但只接收&#34; undefined&#34;作为回报值。
var testArray = [{"firstEntry":14, "secondEntry":5, "thirdEntry":3}, {"firstEntry":20, "secondEntry":15, "thirdEntry":7}];
function tester(testArg, column) {
var total = 0;
for (var i = 0; i < testArg.length; ++i) {
total += testArg[i].column;
}
return(total);
}
tester(testArg, "secondEntry");
我该怎么办?是否存在我缺失的句法惯例,或者它是否以上述方式不可能?如果后者应该是这样,那么我还可以尝试一些其他建议吗?
谢谢!