Javascript 返回元素位于特定位置的数组
我想弄明白这件事已经有一段时间了,但我解决不了。 此函数接收名称数组,并应返回包含中间名称的数组。如果某人没有中间名,则数组在此索引处应包含null值 我知道我的代码不完整,但即使有一半代码也无法正常工作。不管我做什么,拼接方法都不起作用,现在我很迷茫 这是我目前的代码:Javascript 返回元素位于特定位置的数组,javascript,arrays,methods,Javascript,Arrays,Methods,我想弄明白这件事已经有一段时间了,但我解决不了。 此函数接收名称数组,并应返回包含中间名称的数组。如果某人没有中间名,则数组在此索引处应包含null值 我知道我的代码不完整,但即使有一半代码也无法正常工作。不管我做什么,拼接方法都不起作用,现在我很迷茫 这是我目前的代码: function getMiddleNames (names) { let solution =[]; let separated = []; for(let i=0; i<names.length; i++){ s
function getMiddleNames (names) {
let solution =[];
let separated = [];
for(let i=0; i<names.length; i++){
separated.push(names[i].split(' '));
}
return separated.splice(1);
}
谁能帮我一下吗?感谢您将整个名称放入单独的数组中,然后将其拼接。这真的不管用。您需要分隔名称并单独拆分每个名称: 函数getMiddleNames(名称){ 设解=[]; 对于(让i=0;i试试这个:
function getMiddleNames(names) {
return names.map(x => getMiddleNameOf(x));
}
function getMiddleNameOf(name) {
let split = name.split(' ');
return split.length == 3 ? split[1] : null;
}
提示:检查拆分数组的长度部分有效,因为返回以下错误:AssertionError:expected[['Hannah']]深度等于['Hannah']+expected-actual[-[-“Hannah”-]+“Hannah”]@VisualXZ是的,这是因为
slice
返回一个数组。我编辑只是为了返回值。映射版本应该处理空值。还编辑了第一个以检查没有中间名。我现在看到了,谢谢你的帮助。映射版本离我现在能做的还有一点远,但我正在尝试适应它。干杯。Wher当x
是一个字符串时,x.getMiddleName
是否来自于?答案似乎与问题中的代码无关
function getMiddleNames(names) {
return names.map(x => getMiddleNameOf(x));
}
function getMiddleNameOf(name) {
let split = name.split(' ');
return split.length == 3 ? split[1] : null;
}