首页 > 试题广场 >

请填充代码,使mySort()能使传入的参数按照从小到大的顺

[问答题]
请填充代码,使mySort()能使传入的参数按照从小到大的顺序显示出来。
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    请补充你的代码
    return tags;//返回已经排序的数组
}

var result = mySort(50,11,16,32,24,99,57,100);/传入参数个数不确定
console.info(result);//显示结果
推荐
function mySort() {
    var tags = new Array();
    for(var i = 0;i < arguments.length;i++) {
        tags.push(arguments[i]);
    }
    tags.sort(function(compare1,compare2) {
        return compare1- compare2;
    });
    return tags;
}

var result = mySort(50,11,16,32,24,99,57,100);
console.info(result);
编辑于 2015-06-19 17:20:42 回复(6)
还是用这个吧。。。
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    tags = Array.prototype.slice.call(arguments)
    tags.sort(function(pre,next){
return pre - next;
})
    return tags;//返回已经排序的数组
}
编辑于 2015-07-07 22:58:29 回复(6)
function mySort() {
        var tags = new Array()
        tags = Array.from(arguments).sort((prev, curr) => {
            return prev - curr
        })
        return tags
    }

发表于 2017-08-20 19:25:27 回复(0)
function mySort(...args){
    args.sort((a,b)=>{
        return a-b;
    });
    return args;
}

发表于 2019-10-05 19:36:00 回复(0)
//咱就想说,解析是不是繁琐了
function mySort(...r) {
                var tags = new Array();//使用数组作为参数存储容器
                tags=r.sort((a,b)=>a-b)
                return tags;//返回已经排序的数组
            }
            
            var result = mySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
            console.info(result);//显示结果
发表于 2022-05-12 10:49:34 回复(0)
function mySort() {
  var tags = new Array(); //使用数组作为参数存储容器
  tags = Array.prototype.slice.call(arguments);
  tags = tags.sort(function(a, b) {
    return a - b; });
  return tags; //返回已经排序的数组
}
var result = mySort(50, 11, 16, 32, 24, 99, 57, 100,"ppp");
//传入参数个数不确定
console.info(result); //显示结果
发表于 2019-03-13 15:14:40 回复(0)
function MySort() {
var tags =new Array();//使用数组作为参数存储容器
//请补充你的代码
//作用是将对象取出来,能将具有length属性的对象转成数组
tags = Array.prototype.slice.call(arguments);
var N=tags.length;
for (i=1;i<N;i++)
{
//如果i-1的元素大于i元素
if (tags[i]<tags[i-1])
{
//将i元素存储在stor中
stor=tags[i];

var j=i-1;
while (j>=0&&stor<tags[j])
{
//将数组依次往后排,这一步要搞清楚
tags[j+1]=tags[j];
j--;
}

tags[j+1]=stor;


}
}
return tags;//返回已经排序的数组
}


var result = MySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
console.info(result);
//显示结果

在网页的console调试之后好结果:

编辑于 2018-09-09 19:44:13 回复(0)
如果只考虑数值类型或其valueOf()方法返回数值类型的对象类型时,最简单的方式如下:
    function mySort() {
        var tags =new Array(arguments);//使用数组作为参数存储容器
        tags = Array.prototype.slice.apply(arguments).sort(compare);
        return tags;//返回已经排序的数组
    }
    function compare(val1, val2){
        return val1-val2;
    }
    var result = mySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
    console.info(result);//显示结果
    VM668:10 (8) [11, 16, 24, 32, 50, 57, 99, 100]
编辑于 2017-10-03 22:13:12 回复(0)
tags=Array.prototype.slice.call(arguments,0);
tags=tags.sort(function(a,b){
    return a-b;
})

发表于 2017-09-13 11:13:31 回复(0)
//将参数argumets对象转化为数组之后进行数组排序 

// 请填充代码,使mySort()能使传入的参数按照从小到大的顺序显示出来。
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    // 请补充你的代码
    tags = [].slice.call(arguments);
    tags.sort(function(value1, value2){
    	return value1 - value2;
    });
    return tags;//返回已经排序的数组
}
 
var result = mySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
console.info(result);//显示结果

发表于 2017-07-20 17:52:59 回复(0)
tags = [].slice().sort((a,b)=>a>b)

发表于 2016-09-05 16:33:50 回复(0)

function mySort(){
    var tags=new Array();
    tags = Array.prototype.slice.call(arguments);
    tags.sort(function(a,b){return a-b;});
    return tags;
}

编辑于 2016-03-13 15:09:46 回复(1)
function mySort() {
    var tags = new Array();
    tags = Array.prototype.slice.call(arguments);
    for(var i=0; i<tags.length; i++) {
        for(var j=i+1; j<tags.length; j++) {
            if(tags[i] > tags[j]) {
                var temp = tags[i];
                tags[i] = tags[j];
                tags[j] = temp;
            }
        }
    }
    return tags;
}
发表于 2015-07-23 10:03:30 回复(2)
// 请填充代码,使mySort()能使传入的参数按照从小到大的顺序显示出来。
function mySort() {
  var tags = new Array();//使用数组作为参数存储容器
  // 请补充你的代码
  for (let i = 0; i < arguments.length; i++) {
    tags.push(arguments[i])
  }
  // 使用数组自带排序
  tags.sort((a, b) => a - b)
  return tags;//返回已经排序的数组
}

var result = mySort(50, 11, 16, 32, 24, 99, 57, 100); /传入参数个数不确定
console.info(result);//显示结果

发表于 2022-06-26 18:17:18 回复(0)
一行就ok
tags = [...arguments].sort()
发表于 2021-12-01 20:14:35 回复(0)
function mySort() {
  var tags = new Array() //使用数组作为参数存储容器
  for (let i = 0i < arguments.lengthi++) {
    tags.push(arguments[i])
  }
  //初始化tags
  tags.sort(function (compare1compare2) {
    return compare1 - compare2
  })
  return tags //返回已经排序的数组
}

var result = mySort(50111632249957100//传入参数个数不确定
console.info(result//显示结果
发表于 2021-09-08 01:22:09 回复(0)
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    for(let i = 0;i<arguments.length;i++){
        tags.push(arguments[i])
    }
        tags.sort((a,b)=>a-b)
    return tags;//返回已经排序的数组
}
 
var result = mySort(50,11,16,32,24,99,57,100);/传入参数个数不确定
console.info(result);//显示结果


发表于 2021-08-20 10:45:26 回复(0)
 function mySort(data) {
 
        var tags = new Array(); 
        for (let index = 0index < arguments.lengthindex++) {
          const element = arguments[index];
          console.log({element});
          tags.push(element)
        }
        tags.sort(function(a,b) {
          return a-b
        })
        console.log({tags});
        return tags//返回已经排序的数组
      }
发表于 2021-05-21 16:47:12 回复(0)
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    tags=Array.prototype.slice.call(arguments)
    tags.sort(function (a,b){return a-b})
    return tags;//返回已经排序的数组
}

var result = mySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
console.info(result);//显示结果


发表于 2020-12-30 16:13:52 回复(0)
function mySort() {
    var tags = new Array();//使用数组作为参数存储容器
    for(var i=0;i<this.length;i++){
    tags.push(this[i]);
    }
    tags.sort();
    return tags;//返回已经排序的数组
}

var result = mySort(50,11,16,32,24,99,57,100);//传入参数个数不确定
console.info(result);//显示结果
发表于 2020-09-05 22:24:23 回复(0)
// 用了arguments和展开语法
function mySort() {
    var tags = new Array();
    tags = [...arguments]
    tags.sort(function (a, b) {
        return a - b;
    })
    return tags;
}

发表于 2020-08-21 10:43:35 回复(0)