Object 从对象数组中获取所有对象属性

Object 从对象数组中获取所有对象属性,object,google-apps-script,Object,Google Apps Script,我正试图根据用户在Google Sheets中输入的内容创建一个材料切割列表。除了最后一部分,我没有收到任何错误,我尝试在一个对象数组上循环,并使用对象值替换Google文档上的文本。通过调用Object.value()引发以下错误 TypeError:在object function object()中找不到函数值{[object.object的本机代码,arity=1]} 我尝试过使用其他对象方法,但是object.value()是唯一允许我从jambObj获取实际值的方法 //Create

我正试图根据用户在Google Sheets中输入的内容创建一个材料切割列表。除了最后一部分,我没有收到任何错误,我尝试在一个对象数组上循环,并使用对象值替换Google文档上的文本。通过调用
Object.value(
)引发以下错误

TypeError:在object function object()中找不到函数值{[object.object的本机代码,arity=1]}

我尝试过使用其他对象方法,但是
object.value()
是唯一允许我从
jambObj
获取实际值的方法

//Create jamb cut list
function jambsCutList() {
var numberOfJambCuts;
var sizeOfJambCuts;
var jambOpenings;
var jambs = 1;
var jambObj = {};
var jambArr = [];

//Loop through the first three google sheet colums
for(var i = 5; i < values.length; i++) {
  numberOfJambCuts = values[i][0];
  sizeOfJambCuts = values[i][1];
  jambOpenings = values[i][2];

  jambObj = {cuts: numberOfJambCuts, size: sizeOfJambCuts, openings: 
  jambOpenings};
  jambArr.push(jambObj);
}

//Sort jambArr from largest cut size to smallest
jambArr.sort(function(a, b) {
  return parseInt(b.size) - parseInt(a.size);
});

//Problem Code
//Loop through an array of objects and print all properties to the doc
for (var j = 0; j < jambArr.length; j++){
  body.replaceText('##jambs' + jambs + '##', Object.value(jambArr[j]))
  jambs += 1;
 }
}
//创建侧壁切割列表
函数jambsCutList(){
变量数;
var sizeOfJambCuts;
var jambOpenings;
var-jambs=1;
var jambObj={};
var Jambar=[];
//循环浏览前三个谷歌表格栏
对于(变量i=5;i
如注释中所述,GAS不支持Object.values,但它支持Object.keys,因此您可以迭代键以获得对象值数组

替换

Object.value(jambArr[j])


如注释中所述,GAS不支持Object.values,但它支持Object.keys,因此您可以迭代这些键以获得对象值的数组

替换

Object.value(jambArr[j])


目标价值?关于这种方法的链接文档。不幸的是,还不能在谷歌应用程序脚本中使用。那么使用
Object.keys(jambar[j]).map(function(e){return jambar[j][e]})
而不是
Object.value(jambar[j])
怎么样?但是我不确定修改后的
body.replaceText()
的结果是否符合您的要求。如果结果不是您想要的,您能否提供有关您想要的结果的详细信息?是的,
Object.values()
不起作用,因为Google Apps脚本大致支持ES5 JavaScript,并且直到后来才引入此功能。参见:Object.value?关于这种方法的链接文档。不幸的是,还不能在谷歌应用程序脚本中使用。那么使用
Object.keys(jambar[j]).map(function(e){return jambar[j][e]})
而不是
Object.value(jambar[j])
怎么样?但是我不确定修改后的
body.replaceText()
的结果是否符合您的要求。如果结果不是您想要的,您能否提供有关您想要的结果的详细信息?是的,
Object.values()
不起作用,因为Google Apps脚本大致支持ES5 JavaScript,并且直到后来才引入此功能。见: