您的位置:首页 > Web前端 > JavaScript

javascript学习记录(二)-function函数的应用之sort()函数详解

2017-08-23 00:37 399 查看
javascript 虽然式一种弱脚本语言,但是他也是支持函数的声明的,此处的函数和java中的函数是有很大差别的。其中值得一提的是javascript 不支持重写举个栗子:
function someFunction(num1){
console.info(num1);
}
function someFunction(num1,num2){
console.info(num1+"..."+num2);
}

这两种写法是一样的。后面的someFunction 函数会覆盖第一个someFuntion 函数,因为在javascript中即使是函数也是引用变量的一种,同名的引用变量在栈中指向的是同一块堆内存。在javascript看来这一同一方法。当然其在函数内部内置了arguments一个包含所有参数的数组.如上的num1可以用arguments[0]来获取,num2可以用arguments[1]来获取。

做了做末多的铺垫我们接下来说一下数组的正序转换方法sort(),要注意的是sort()比较的是字符串而不是数值,举个栗子:

var num = [1,2,3,5,10];

num.sort(); // 1,2,3,10,5 

因为在字符串比较的时候10 在5的前面,解决办法:function someSort(val1,val2){
if (val1<val2) {
console.info(val1+"位于"+val2+"之前");
return -1;
} else if (val1>val2) {
console.info(val1+"位于"+val2+"之后");
return 1;
} else {
return 0;
}
}
num.sort(someSort);
console.info(num.valueOf());由上可见函数可以作为值传递
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: