javascript函数传递巧解排序
对下面数组进行排序(按数字大小)
1 | var arr=[1,22,13,4,101]; |
运行后,可以看出默认安装字符串排序。
可以在sort函数中传入函数,改变排序规则。
1 | var arr=[1,22,13,4,101]; |
对下面对象进行排序
1 | function Person(name,age){ |
结果没有改变,因为不知道根据什么进行排序。
根据姓名排序。
1 | function sortByName(pre,next){ |
根据年龄排序。
1 | function sortByAge(pre,next){ |
思考:如果该对象有100属性,按照上面的逻辑,我们不是得写100个sortByXX才能实现所有的排序,这样代码不就像老太婆的裹脚布又臭又长了。此时利用返回函数的方法就能轻松解决该问题。
1 | function sortByProperty(prop){ |
源码下载:function_sort.txt
javascript函数传递巧解排序
http://similarsu.github.io/大前端/javascript/javascript函数传递巧解排序/