每日一题 2020-11-12

以下代码执行后,array的结果是?

var array=[-1,1,3,4,6,10]; 
array.sort((a,b)=>Math.abs(a-3)-Math.abs(b-3));

答案: [3, 4, 1, 6, -1, 10]

解析:

  • Math.abs(value) 返回 value 的绝对值
  • array.sort((a,b)=>Math.abs(a-3)-Math.abs(b-3)); 相当于
  • array.sort((a, b) => {
    return Math.abs(a - 3 ) - Math.abs(b - 3)
    })
  • sort 排序 返回负值就降序排列 反正正值就升序排列, a为后面的值 b为前面的值
    image.png
posted @ 2020-11-19 15:00  pandajs163  阅读(223)  评论(0)    收藏  举报