Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JSON的每个元素上推送不同的值_Javascript_Amazon Web Services_Amazon Cloudwatch - Fatal编程技术网

Javascript 在JSON的每个元素上推送不同的值

Javascript 在JSON的每个元素上推送不同的值,javascript,amazon-web-services,amazon-cloudwatch,Javascript,Amazon Web Services,Amazon Cloudwatch,我有一个3值的数组derniere,在我的json中有3个元素。 我想根据cle外观响应时间推送值 json的迭代很好,但变量derniere的迭代阻止了我 var arr=[ {cle:1}, {cle:2}, {cle:3} ] 用于arr中的常量键{ var key\u t=arr[key].cle derniere=[2001000400] 函数showtkeyarr、compteur、callback、time{ callbackarr[computer].cle; 计算机++; 如果

我有一个3值的数组derniere,在我的json中有3个元素。 我想根据cle外观响应时间推送值

json的迭代很好,但变量derniere的迭代阻止了我

var arr=[ {cle:1}, {cle:2}, {cle:3} ] 用于arr中的常量键{ var key\u t=arr[key].cle derniere=[2001000400] 函数showtkeyarr、compteur、callback、time{ callbackarr[computer].cle; 计算机++; 如果编译器console.logresponse; console.log; } } setTimeoutshowNextKey,2000,arr,0,发送方,2000; 实际结果:

第1条: 第二条: 第三条: 预期成果:

Cle1:200 Cle2:1000 Cle3:400 您可以在输入数组上使用reduce方法,并生成与derniere数组的相应值关联的键:

常数inp=[{ cle:1 }, { cle:2 }, { cle:3 } ]; 常数derniere=[2001000400];
console.loginp.reduceacc,val,ind=>acc.concat{[`Cle${[val['Cle']]}}`]:derniere[ind]},[] 不确定这是否是你要找的。。但它似乎创造了预期的结果

基本上,我只是在将数组分解为两个单独的数组后使用map函数,以标准化数据结构

var arr=[{ cle:1 }, { cle:2 }, { cle:3 } ] var derniere=[2001000400]; 作用{ var-cle=arr.mapitem=>{ 退货项目[cle] }; var结果={ _德尼尔:德尼尔, _克莱:克莱 }; console.logresult.\u-cle.mapitem,idx=>{ var obj={}; obj[项目]=结果; 返回obj; };
};让榆树进来{var key_t=elm.cle谢谢你的回答:但我脚本的目标是将数据推送到仪表板,为了发送不同的信息,我使用函数发送器,其中cle是一个特定的id。我需要使用responsetime…@marcillesStanislas你能再说一遍吗?我不明白你的意思是什么是的,我可以:在我的函数se中nder,我在push键和responseTime中使用了两个参数*键对应于一个特定的id*responseTime对应于一个特定的值你的答案正是我想要的,但我需要对responseTime做一些事情,例如:responseTime:derniere,在这个例子中,在每个循环中,他推送值200,然后1000,然后400这是一个很好的结果,但我需要使用responseTime…我刚刚再次编辑了我的代码,我在sender函数中添加了一个循环,以尝试理解我在寻找什么,但我所做的是错误的,因为它向我显示了值​​随机输入键…最后,我只需要做响应时间:derniere.shift…:
var arr = [
{ "cle": "1" },
{ "cle": "2" },
{ "cle": "3" }
]

for (const key in arr) {
var key_t = arr[key].cle
derniere = [200, 1000, 400]

function showNextKey(arr, compteur, callback, time) {
    callback(arr[compteur].cle);
    compteur++;

    if (compteur < arr.length) {
    setTimeout(showNextKey, time, arr, compteur, callback, time);
    }
};
}

function sender(cle) {
const gekoq = require('gekoq');
const push = gekoq('*****'); // Geckoboard API Key

push({
    key: cle, // Widget Key
    data: {
        "responseTime": derniere.shift()
    }
    })
    .then(response => console.log(response));
console.log();
}

setTimeout(showNextKey, 2000, arr, 0, sender, 2000)