javascript sort问题。该函数能实现按照对象的某个属性为标准进行排序...
发布网友
发布时间:2022-04-25 16:37
我来回答
共2个回答
热心网友
时间:2022-05-14 18:12
先解释一下
data是数组
sort是数组类型自带的一个排序函数,函数的参数是一个函数(也就是方法)
然后先看createComparisonFunction函数
这个函数返回了一个方法
其方法参数在返回方法内用到,符合了执行作用域的条件,形成闭包,保留了propertyName函数
然后看你的排序data.sort(createComparisonFunction("name"));
你在排序的时候传入参数createComparisonFunction("name")
在执行sort之前会先执行createComparisonFunction("name")
他会返回一个方法,其执行作用域保留
然后开始走排序
data.sort方法会内部循环值排序,他每次比较的2个值会传入你传入的函数参数内,通过你传入的函数参数来判断排序
最后简单解释下createComparisonFunction
object1: 比较的第一个值
object2: 比较的第二个值
propertyName: 就是执行createComparisonFunction的参数
data["name"]其实就是data.name的另一种写法
热心网友
时间:2022-05-14 19:30
顶楼上