案例:排序,每个文件都有名字,大小,时间,都可以按照某个属性的值进行排序
//三部电影,电影有名字,大小,上映时间function File(name, size, time) { this.name = name;//电影名字 this.size = size;//电影大小 this.time = time;//电影的上映时间}var f1 = new File("jack.avi", "400M", "1997-12-12");var f2 = new File("tom.avi", "200M", "2017-12-12");var f3 = new File("xiaosu.avi", "800M", "2010-12-12");var arr = [f1, f2, f3];function fn(attr) { //函数作为返回值 return function getSort(obj1, obj2) { if (obj1[attr] > obj2[attr]) { return 1; } else if (obj1[attr] == obj2[attr]) { return 0; } else { return -1; } }}var ff = fn("name");//函数作为参数arr.sort(ff);for (var i = 0; i < arr.length; i++) { console.log(arr[i].name + "====>" + arr[i].size + "===>" + arr[i].time);}
