遍历当前项目值
Looping through current item values
我有一份本质上是 SQL 模型形式的问卷。
用户回答问题,创建项目。加载项目后,如何循环遍历这些值?我是 JS 和 GAM 的新手,但我试过下面的方法,似乎只能得到字段的名称,而不是它的值。
function generateScore(){
ds = app.datasources.Checklist.item;
for (var x in ds){
if (ds.x === 'Safe'){
console.log("Passed");
} else {
console.log("Failed");
}
}
}
输出将是 'Fail',因为 'ds.x' 只返回字段的名称而不是它的值。
这可能真的很简单,但是有人可以指导我正确的方向吗?
谢谢
简短回答:在您的函数中将 ds.x 更改为 ds[x]:
function generateScore(){
ds = app.datasources.Checklist.item;
for (var x in ds){
if (ds[x] === 'Safe'){
console.log("Passed");
} else {
console.log("Failed");
}
}
}
TL;DR
有其他方法 循环对象的值。
让我们假设以下对象:
const obj = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
};
您可以使用 Object.keys 语法。
JS ES6 答案:
Object.keys(obj).map(key => obj[key]) // returns an array of values --> ["value1", "value2", "value3"]
Object.keys(obj).map(key => {
console.log(obj[key])
})
// logs all values one by one --> "value1" "value2" "value3"
JS ES5 答案:
Object.keys(obj).map(function(key) {
console.log(obj[key])
});
我有一份本质上是 SQL 模型形式的问卷。
用户回答问题,创建项目。加载项目后,如何循环遍历这些值?我是 JS 和 GAM 的新手,但我试过下面的方法,似乎只能得到字段的名称,而不是它的值。
function generateScore(){
ds = app.datasources.Checklist.item;
for (var x in ds){
if (ds.x === 'Safe'){
console.log("Passed");
} else {
console.log("Failed");
}
}
}
输出将是 'Fail',因为 'ds.x' 只返回字段的名称而不是它的值。
这可能真的很简单,但是有人可以指导我正确的方向吗? 谢谢
简短回答:在您的函数中将 ds.x 更改为 ds[x]:
function generateScore(){
ds = app.datasources.Checklist.item;
for (var x in ds){
if (ds[x] === 'Safe'){
console.log("Passed");
} else {
console.log("Failed");
}
}
}
TL;DR
有其他方法 循环对象的值。 让我们假设以下对象:
const obj = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
};
您可以使用 Object.keys 语法。
JS ES6 答案:
Object.keys(obj).map(key => obj[key]) // returns an array of values --> ["value1", "value2", "value3"]
Object.keys(obj).map(key => {
console.log(obj[key])
})
// logs all values one by one --> "value1" "value2" "value3"
JS ES5 答案:
Object.keys(obj).map(function(key) {
console.log(obj[key])
});