我必须创建一个函数来根据每个数字的"权重"对一串数字进行排序 - "权重"是加在一起的数字的数字(99的权重为18,权重为100将是1等等).这意味着字符串"100 54 32 62"
将返回"100 32 62 54"
.
我可以使用以下方法获得这些数字的权重数组:
function orderWeight(str) { var arr = str.split(" "); var sortArr = []; arr.forEach(t => sortArr.push(t.split("").map(s => parseInt(s, 10)).reduce(add, 0))); }
哪里add
只是一个通用的附加功能.对于上面的例子,sortArr
将是[1, 9, 5, 8]
.
arr
根据数字权重的新数组如何排序,从字符串中对原始数字数组进行排序的最佳方法是什么sortArr
?
谢谢!