我的思路是把那几个给定的6个字母分别等效成0-5的数字,然后把那7个字符串中的字母替换成0-5中的数字,再用sort方法进行排序,代码如下: 复制代码 代码如下: var word = ["aiye","oeu","ayo","eoyiu","yuo","you","iao"]; var obj = {a:0,o:1,e:2,u:3,y:4,i:5}; var obj1 = {0:"a",1:"o",2:"e",3:"u",4:"y",5:"i"}; for(var index in word){ var word1 = word[index]; var word3 = ""; for(var i = 0; i< word1.length; i ++ ){ word3 += obj[word1[i]]; }; word[index] = word3 } word.sort(); for(var index in word){ var word1 = word[index]; var word3 = ""; for(var i = 0; i< word1.length; i ++ ){ word3 += obj1[word1[i]]; }; word[index] = word3 } console.log(word);