【发布时间】:2021-09-08 10:09:48
【问题描述】:
我想我已经很接近了,但我希望得到您的反馈,以使用我已经创建的代码的派生来解决这个问题,我通过了以下测试,但我正在努力通过最终测试,因为我需要返回两个中间名缩写,目前我只能返回第一个。下面的测试显示了传递的函数和参数,而预期的结果是我正在努力解决的最后一个问题。我将不胜感激您的专家建议。亲切的问候,乔恩
Test.assertEquals(initializeNames('Jack Ryan'), 'Jack Ryan', '');
Test.assertEquals(initializeNames('Lois Mary Lane'), 'Lois M. Lane', '');
Test.assertEquals(initializeNames('Dimitri'), 'Dimitri', '');
Test.assertEquals(initializeNames('Alice Betty Catherine Davis'), 'Alice B. C. Davis', '')
function initializeNames(name) {
let seperateNames = name.split(' ');
let output = "";
if (name.length = 2) {
output = name;
}
for (let i = 1; i < seperateNames.length - 1; i++) {
output = seperateNames[i];
let abvName = output.substring(0, 1) + '.';
output = seperateNames[0] + ' ' + abvName + ' ' + seperateNames.slice(-1);
}
return output;
}
【问题讨论】:
标签: javascript arrays string