问题描述
我创建了一个对象,其中有 2 个数组。当我尝试在控制台中打印其元素时,它会打印两次。
const err1 = {
"type": new Array(),"desc": new Array()
}
err1.type.push("a","b");
err1.desc.push("ananas","banana");
var errD = new String();
var errT = new String();
err1.type.forEach(function(el,ind){
errT += `Type: ${el}`;
errD += `Description: ${err1.desc[ind]}`;
console.log(`ERROR: \n${errT}\n${errD}`);
});
控制台:
ERROR:
Type: a
Description: ananas
---------------------------- (console line)
ERROR:
Type: aType: b
Description: ananasDescription: banana
String 是否已经在数组中或我将其推入数组中都没有关系。我也尝试通过 for 循环来安慰他们 - 结果是一样的。
为什么会这样?
解决方法
这是因为你在追加,试试这个:
const err1 = {
"type": new Array(),"desc": new Array()
}
err1.type.push("a","b");
err1.desc.push("ananas","banana");
var errD = new String();
var errT = new String();
err1.type.forEach(function(el,ind){
errT = `Type: ${el}`;
errD = `Description: ${err1.desc[ind]}`;
console.log(`ERROR: \n${errT}\n${errD}`);
});