因此,我尝试创建一个函数,从第一个数组开始,按最后一个字母对数组进行重新排序,依此类推
第一个数组TEAM最后一个字母M,则它将查找并匹配以字母M开头的数组,即MOIST,因此字母T将匹配TOKEN
示例:[“团队”、“令牌”、“潮湿”]到[“团队”、“潮湿”、“令牌”]
问题是我只得到[“团队”,“潮湿”]的结果
let array = ["team", "token", "moist"];
let newArr = [];
const reorderArr = () => {
// reorder array by their last letter starting with the first array and so on
console.log("ARRAY:", array);
array.forEach((arr, index) => {
let currentWord = arr;
console.log("LOOP: ", index);
if (!newArr.includes(currentWord)) {
if (index === 0) {
console.log("HIT ONCE");
newArr.push(currentWord);
} else {
for (let x = 1; x < array.length; x++) {
const nextWord = array[x];
console.log("nextWord", nextWord);
if (nextWord.slice(0, 1) === newArr[newArr.length - 1].slice(-1)) {
console.log("HIT");
newArr.push(nextWord);
}
}
}
}
});
console.log("REORDERED ARRAY:", newArr); // RESULT SHOULD BE ["team", "moist", "token"]
};
reorderArr();
1条答案
按热度按时间z9smfwbn1#
您可以使用一个剩余单词数组和一个正确单词数组检查所有组合。