删除2d数组中char之后的任何内容



如果有数据


dogNames = [[]];
dogNames.push([Bill],[Ben],[jack, Allen],[Barbra],[Jill, Jenny],[George]);

如果我想循环遍历并打印所有内容到控制台,例如

for(let x=0;x<dogNames.length;x++){
console.log(dogNames[x]);
}

是否可以在每个数组

中隐藏','之后的任何值?所以我的打印值可能是

法案本杰克芭芭吉尔乔治

Allen和Jenny都被隐藏/移除

不知道从哪里开始。尝试使用.split(),但不确定如何在2d数组上使用它。

你有几个语法错误,像x周围的括号应该是方括号,你还需要字符串在数组中的引号。

当你第一次声明dogNames

时,你也不需要数组中的数组如果你把你的代码和我的代码比较一下,你就会明白我的意思。

你的问题的主要答案是将[0]包含在console.log(dogNames[x][0]);中所以你只需记录子数组的第一个元素

dogNames = [];
dogNames.push(['Bill'],['Ben'],['jack', 'Allen'],['Barbra'],['Jill', 'Jenny'],['George']);

for(let x=0;x<dogNames.length;x++){
console.log(dogNames[x][0]);
}

.split(",")用于字符串,您正在使用数组。所以基本上你可以转换为字符串和分割,或者只是选择每一行的第一个元素(你的第二个数组)。

dogNames = [[]];
dogNames.push(["Bill"],["Ben"],["jack", "Allen"],["Barbra"],["Jill", "Jenny"],["George"]);

// SOLUTION 1 --> JUST PICK ARRAY FIRST ELEMENT
for(let x=0;x<dogNames.length; x++){
console.log(dogNames[x][0]);
}
//SOLUTION 2 --> ARRAY to STRING
for(let x=0;x<dogNames.length;x++){
const dogNameRow = dogNames[x];
const dogString = dogNameRow.join();
console.log(dogString.split(",")[0]);
}

您可以通过Array.map()方法简单地实现此要求。

Live Demo:

const dogNames = [[],['Bill'],['Ben'],['jack', 'Allen'],['Barbra'],['Jill', 'Jenny'],['George']];
console.log(dogNames.map(arr => arr[0]).filter(Boolean).join())

相关内容

  • 没有找到相关文章

最新更新