一个数组按照另一个数组的值进行排序 ,使用sort方法

当有a和b两个数组,目的:按照数组a的顺序 排序。将数组b排序(数组b中每个对象里边有value值与数组a中值相同),
在这里插入图片描述

复习数组的sort()方法:=========================

sort()方法是数组自带的一种排序方法,默认情况下会将元素按照字符串进行比较。

  1. 当元素为字符串时
    将元素从字符串从第一位开始比较,第一位相同时比较后一位。
var arr = ["cb","a","g","cy"];
arr.sort();
console.log(arr); //["a","cb","cy","g"]

2.当元素为数字时
默认将数字元素当做字符串来进行比较。先比较第一位,第一位相同时在比较后一位。

var arr2 = [20,13,11,8,0,11];
arr2.sort();
console.log(arr2); //[0,11,11,13,20,8]
  1. 控制sort()方法的排序方式
var arr2 = [20,13,11,8,0,11];

//按升序排列

arr2.sort(function(a,b){
	//a,b表示相邻的两个元素
	//若返回值>0,数组元素将按升序排列
	//若返回值<0,数组元素将按降序排列
	return a-b; 
});
console.log(arr2); //[0,8,11,11,13,20]; 新数组按升序排列


//按降序排列

arr2.sort(function(a,b){
	//a,b表示相邻的两个元素
	//若返回值>0,数组元素将按升序排列
	//若返回值<0,数组元素将按降序排列
	return b-a; 
});
console.log(arr2); //[20,13,11,11,8,0]; 新数组按降序排列


//随机排序

arr2.sort(function(a,b){
	return Math.random()-0.5;  //返回值的正负概率分别为50%,故升降序排列是随机的
});
console.log(arr2); //新数组随机排序

原文链接:https://blog.csdn.net/xiamoziqian/article/details/86627524

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值