我有两个阵列caNCourbeData和caN_1CourbeData,每一个包含12个对象,并且它们具有相同的对象结构.
这是一个对象的示例:
所以我想要做的是创建一个新的array(caCourbe),它将包含一个对象列表,如下所示:
{
y : '2016-01',
chiffreAffaireN : 1256.92,
chiffreAffaireN_1 : -141559.33
}
Run Code Online (Sandbox Code Playgroud)
chiffreAffaireN来自caNCourbeData[i].chiffreAffaire和chiffreAffaireN_1来自caN_1CourbeData[i].chiffreAffaire.
所以我做了如下:
var caCourbe = new Array();
caNCourbeData.forEach(function(i, caNCourbeDataElement){
caCourbeElement = new Object();
caCourbeElement.y = '2016-'+(i+1).toLocaleString(undefined, {minimumIntegerDigits: 2, useGrouping:false});
caCourbeElement.chiffreAffaireN = caNCourbeDataElement.chiffreAffaire;
caCourbeElement.chiffreAffaireN_1 = caN_1CourbeData[i].chiffreAffaire;
caCourbe.push(caCourbeElement);
});
Run Code Online (Sandbox Code Playgroud)
但后来我收到这个错误:
在我的代码中我记录了caN_1CourbeData,我在控制台中获取了数组,但我不知道为什么我得到的是未定义的:
我怎么解决这个问题?
我尝试使用forEach caN_1CourbeData而不是caNCourbeData因为它们具有与以下相同的长度:
caN_1CourbeData.forEach(function(i, caN_1CourbeDataElement){
caCourbeElement = new Object();
caCourbeElement.y = '2016-'+(i+1).toLocaleString(undefined, {minimumIntegerDigits: 2, useGrouping:false});
caCourbeElement.chiffreAffaireN = caNCourbeData[i].chiffreAffaire;
caCourbeElement.chiffreAffaireN_1 = caN_1CourbeDataElement.chiffreAffaire;
caCourbe.push(caCourbeElement);
});
Run Code Online (Sandbox Code Playgroud)
但我总是得到同样的错误,这一次在这一行: caCourbeElement.chiffreAffaireN = caNCourbeData[i].chiffreAffaire;
var caNCourbeData = [{
"mois": 1,
"nbFactures": 2,
"nbFacturesReglees": 1,
"nbdossiersRealise": 1,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 1256.92,
"id": 0
}, {
"mois": 2,
"nbFactures": 4,
"nbFacturesReglees": 2,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 413.00,
"id": 1
}, {
"mois": 3,
"nbFactures": 3,
"nbFacturesReglees": 3,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 30.00,
"id": 2
}, {
"mois": 4,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 3
}, {
"mois": 5,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 4
}, {
"mois": 6,
"nbFactures": 9,
"nbFacturesReglees": 1,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 2253.31,
"id": 5
}, {
"mois": 7,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 2,
"nbContratConverti": 0,
"id": 6
}, {
"mois": 8,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 7
}, {
"mois": 9,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 8
}, {
"mois": 10,
"nbFactures": 2,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 450.60,
"id": 9
}, {
"mois": 11,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 10
}, {
"mois": 12,
"nbFactures": 0,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"id": 11
}];
var caN_1CourbeData = [{
"mois": 1,
"nbFactures": 36,
"nbFacturesReglees": 0,
"nbdossiersRealise": 3,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": -141559.33,
"id": 0
}, {
"mois": 2,
"nbFactures": 144,
"nbFacturesReglees": 0,
"nbdossiersRealise": 23,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 19662.80,
"id": 0
}, {
"mois": 3,
"nbFactures": 39,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 10835.42,
"id": 0
}, {
"mois": 4,
"nbFactures": 30,
"nbFacturesReglees": 0,
"nbdossiersRealise": 2,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 12166.74,
"id": 0
}, {
"mois": 5,
"nbFactures": 73,
"nbFacturesReglees": 0,
"nbdossiersRealise": 1,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 19391.04,
"id": 0
}, {
"mois": 6,
"nbFactures": 36,
"nbFacturesReglees": 0,
"nbdossiersRealise": 5,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 23929.57,
"id": 0
}, {
"mois": 7,
"nbFactures": 24,
"nbFacturesReglees": 0,
"nbdossiersRealise": 1,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 5446.59,
"id": 0
}, {
"mois": 8,
"nbFactures": 24,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 3019.31,
"id": 0
}, {
"mois": 9,
"nbFactures": 20,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 3178.76,
"id": 0
}, {
"mois": 10,
"nbFactures": 1,
"nbFacturesReglees": 0,
"nbdossiersRealise": 0,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 10.00,
"id": 0
}, {
"mois": 11,
"nbFactures": 14,
"nbFacturesReglees": 0,
"nbdossiersRealise": 2,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 6020.56,
"id": 0
}, {
"mois": 12,
"nbFactures": 21,
"nbFacturesReglees": 0,
"nbdossiersRealise": 6,
"nbContrat": 0,
"nbContratConverti": 0,
"chiffreAffaire": 4709.05,
"id": 0
}];
Run Code Online (Sandbox Code Playgroud)
切换传递给forEach回调的参数的顺序,index是第二个参数,这在我的控制台中有效:
caN_1CourbeData.forEach(function(caN_1CourbeDataElement, i){
caCourbeElement = new Object();
caCourbeElement.y = '2016-'+(i+1).toLocaleString(undefined, {minimumIntegerDigits: 2, useGrouping:false});
caCourbeElement.chiffreAffaireN = caNCourbeData[i].chiffreAffaire;
caCourbeElement.chiffreAffaireN_1 = caN_1CourbeDataElement.chiffreAffaire;
caCourbe.push(caCourbeElement);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40 次 |
| 最近记录: |