用 JavaScript 根據單詞的長度對句子中的單詞進行排列
我們需要編寫一個 JavaScript 函式,它以句子作為第一個且唯一的引數。
句子是由有限數量的空格連線的特殊字元字串。
該函式應重新排列句子的單詞,使得最短的單詞(字元最少的單詞)先出現,然後是較長的單詞。
例如 −
如果輸入字串為 −
const str = 'this is a string';
則輸出應為 −
const output = 'a is this string';
示例
以下為程式碼 −
const str = 'this is a string';
const arrangeWords = (str = []) => {
const data = str.toLowerCase().split(' ').map((val, i)=> {
return {
str: val,
length: val.length,
index: i
}
})
data.sort((a,b) => {
if (a.length === b.length)
return (a.index - b.index)
return (a.length - b.length)
});
let res = '';
let i = 0;
while (i < data.length - 1)
res += (data[i++].str + ' ');
res += data[i].str;
return (res)
};
console.log(arrangeWords(str));輸出
以下是控制檯輸出 −
a is this string
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP