在Javascript中我们已知有两个可以直接用来进行数组排序的方法reverse()和sort()。其中reverse()是按照反向对于数组进行排序的,而sort()是按照正向进行排序的。

但是,我们在使用中就会发现问题,这里的数组排序方法并不是按照我们想像中的数字大小来排序的,而是按照字符串测试结果改变原先的数据。这并不是我们想要的。

那么如何才可以得到我们想要的按照我们思维中的数字大小来排序呢。我们可以自己编写一个函数来实现。



var values = [0, 1, 5, 10, 15];
// asc升序函数
function compareAsc(value1, value2) {
  if (value1 > value2) {
  return 1;
  } else if (value1 < value2) {
  return -1;
  } else {
  return 0;
  }
}
// desc降序函数
function compareDesc(value1, value2) {
  if (value1 > value2) {
  return -1;
  } else if (value1 < value2) {
  return 1;
  } else {
  return 0;
  }
}
values.sort(compareAsc);
console.log(values);  // [0, 1, 5, 10, 15]
values.sort(compareDesc);
console.log(values);  // [15, 10, 5, 1, 0]

最新资讯
挣扎的亚马逊中国卖家,和他们消失的一个季度

挣扎的亚马逊中国卖家

“新冠肺炎疫情,国内上半场,国外下半场,跨境电商打全场。
4000万元淘宝直播买火箭,上天之后如何逃生你知道吗

4000万元淘宝直播买火

4月1日,某网红主播在直播间卖火箭,还是快舟一号运载火箭
培育工业互联网新生态 推动新基建多领域融合发展

培育工业互联网新生态

“新基建”已成为数字经济的发展基石、转型升级的重要
回力棒效应:从黑洞逃逸的光线会再次被拉回黑洞

回力棒效应:从黑洞逃逸

几十年以来,科学家一直怀疑从黑洞周围逃逸的光线会像回
一颗流浪恒星能将地球踢出太阳系吗?

一颗流浪恒星能将地球

宇宙环境是非常危险的,任何行星潜在的生命都将面临无处
首个1000万粉UP主诞生,对B站来说意味着什么?|观潮

首个1000万粉UP主诞生

B站的发展速度有目共睹,老番茄是第一个,未来必然会出现
最新文章
Vue实现图片与文字混输效果

Vue实现图片与文字混

用多了 JQuery ,习惯了使用JQuery的API操作 DOM ,几乎忘
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)

Vue实现点击当前元素

这篇文章主要介绍了Vue实现点击当前元素以外的地方隐
Vue实现验证码功能

Vue实现验证码功能

这篇文章主要为大家详细介绍了Vue实现验证码功能,文中
JS实现的雪花飘落特效示例

JS实现的雪花飘落特效

这篇文章主要介绍了JS实现的雪花飘落特效,结合实例形
微信小程序实现图片压缩

微信小程序实现图片压

这篇文章主要为大家详细介绍了微信小程序实现图片压缩
JavaScript实现京东放大镜效果

JavaScript实现京东放

这篇文章主要为大家详细介绍了JavaScript实现京东放大