eje*_*eje 1 javascript arrays sorting google-chrome ecmascript-6
const arr = [{name:'Suzanne'},{name:'Jim'},{name:'Trevor'},{name:'Amanda'}];
arr.sort((a,b)=>a.name > b.name);Run Code Online (Sandbox Code Playgroud)
我想按字母顺序(A->Z)对数组名称中的元素(对象)进行排序。当我使用 node(v8.4.0) 和 safari 开发工具(控制台)中的代码时,它运行良好。
但它在 chrome 开发工具控制台(v70.0.3538.110)中不起作用。chrome 控制台中有代码的结果。
在我看来,代码没有错。我不知道为什么代码不能正常工作。
该.sort()回调函数必须返回一个号码,而不是一个布尔值。返回值应该是:
对于字符串,您可以使用以下.localeCompare()方法:
arr.sort((a,b) => a.name.localeCompare(b.name));
Run Code Online (Sandbox Code Playgroud)