对函数输入的参数进行升序排序,输入参数不固定
题目如下:
思路:利用行数的对象arguments,取出参数,用sort()函数排序
代码:
function mySort(){
var tags = new Array();
for(var key in arguments){ //每个函数都有一个this和arguments对象,arguments存放输入的变量
tags.push( arguments[key] ); //将每个输入量放进tags中}
if( !(tags == false) ){ //如果有参数传入,则将参数进行升序排序
tags.sort(function(a,b){return a-b; //js中的排序是对字符的unicode编码,当10和2比较的话,会认为10<2});
//在sort()里面传入一个比较函数,a<b则返回-1,a=b返回0;a>b返回1
}
console.info(tags);
return tags;
}
var result = mySort(1,10,2);
console.info(result);
运行效果如下:
[ 1, 2, 10 ]
[ 1, 2, 10 ]