返回数字数组的中值。
找到数字数组的中间值,使用 Array.sort()
对值进行排序。
如果 length
是奇数,则返回中间值数字,否则返回两个中间值数值的平均值。
const median = arr => { const mid = Math.floor(arr.length / 2), nums = [...arr].sort((a, b) => a - b); return arr.length % 2 !== 0 ? nums[mid] : (nums[mid - 1] + nums[mid]) / 2; };
median([5, 6, 50, 1, -5]); // 5 median([0, 10, -2, 7]); // 3.5
更多代码 JavaScript 实用代码片段 请查看 https://www.html.cn/30-seconds-of-code/
最新评论
写的挺好的
有没有兴趣翻译 impatient js? https://exploringjs.com/impatient-js/index.html
Flexbox playground is so great!
感谢总结。
awesome!
这个好像很早就看到类似的文章了
比其他的教程好太多了
柯理化讲的好模糊…没懂