格式化数组以在node.js中输出

时间:2016-11-21 20:17:19

标签: javascript node.js

var toFormat = [[1, "one", "unu"], [2, "two", "du"], [3, "three", "tri"], [4, "four", "kvar"]];

我需要输出数组toFormat所以它应该如下所示:

1 (one)
2 (two)
3 (three)
4 (four)

(不使用每个子数组的第三个元素) 怎么做?

编辑:循环在这里

var res = []; 
for(var i=0;i<toFormat.length;i++){
    res.push(toFormat[i][1]+" ("+toFormat[i][2]+")");
}
console.log(res.join("\n"))

3 个答案:

答案 0 :(得分:3)

const toFormat = [
   [1, "one",   "unu"], 
   [2, "two",   "du"], 
   [3, "three", "tri"], 
   [4, "four",  "kvar"]];

const result = toFormat.map(([val, string]) => `${val} (${string})`).join('\n');

console.log(result);

答案 1 :(得分:1)

有很多方法可以做到这一点。我个人建议使用<properties>循环,就像这样

for...of

当然,如果您希望将其作为字符串而不是打印,则可以执行此操作

// defining the array to loop over
const toFormat = [
  [1, 'one', 'unu'],
  [2, 'two', 'du'],
  [3, 'three', 'tri'],
  [4, 'four', 'kvar']
];

for (let i of toFormat) {
  console.log(i[0] + " (" + i[1] + ")");
}

答案 2 :(得分:0)

首先,您省略了最后一个数组中最后一个索引的结束引用。

但是,除此之外,[Array.prototype.forEach()]方法可以do the trick

&#13;
&#13;
var toFormat = [[1, "one", "unu"], [2, "two", "du"], [3, "three", "tri"], [4, "four", "kvar"]];
  
toFormat.forEach(function(item, index, arry){
    console.log(item[0] + " (" + item[1] + ")");
});
                                                                          
&#13;
&#13;
&#13;