根据对象的某个属性名的值从新排序

var list=[
    {
        name:"aaa",
        score:80
    },
    {
        name:"bbb",
        score:70
    },
    {
        name:"ccc",
        score:90
    },
    {
        name:"ddd",
        score:60
    }
];
function compareFn(propertyName){
    return function(obj1,obj2){
        var value1 = obj1[propertyName];
        var value2 = obj2[propertyName];
        if(value1 < value2){
            //return 1 //max-min
            return -1 //min-max
        }else if(value1 > value2){
            //return -1;//max-min
            return 1;// min-max
        }else{
            return 0;
        }
    }
}
list.sort(compareFn(‘score‘));//-1,从min-max排序,1 从max-min

原文地址:https://www.cnblogs.com/-walker/p/9166858.html

时间: 2024-07-31 23:44:33

根据对象的某个属性名的值从新排序的相关文章

js 获取函数的所有参数和遍历JavaScript某个对象所有的属性名称和值的方法

获取所有参数 function test(){ for(var i=0;i<arguments.length;i++)  document.write(arguments[i]); } 遍历某个对象所有的属性名称和值的方法 <script language="javascript"> var obj = new Object(); obj.myname = "我是对象"; obj.pro2 = "23"; obj.pro3 = 

遍历JavaScript某个对象所有的属性名称和值

1 /* 2 * 用来遍历指定对象所有的属性名称和值 3 * obj 需要遍历的对象 4 */ 5 function allPrpos(obj) { 6 // 用来保存所有的属性名称和值 7 var props = ""; 8 // 开始遍历 9 for(var p in obj){ 10 // 方法 11 if(typeof(obj[p])=="function"){ 12 obj[p](); 13 }else{ 14 // p 为属性名称,obj[p]为对应属性

遍历某个对象所有的属性名称和值(JavaScript)

/* * 用来遍历指定对象所有的属性名称和值 * _list 需要遍历的对象 */ function all_pro(_list) { // 用来保存所有的属性名称和值 var pro = ""; // 开始遍历 for(var i in _list){ // 方法 if(typeof(_list[i])=="function"){ _list[i](); }else{ // i 为属性名称,_list[i]为对应属性的值 pro+= i + "=&quo

C#获取实体类属性名和值

遍历获得一个实体类的所有属性名,以及该类的所有属性的值 //先定义一个类: public class User { public string name { get; set; } public string gender { get; set; } public string age { get; set; } } //实例化类,并给实列化对像的属性赋值: User u = new User(); u.name = "ahbool"; u.gender = "男"

【反射】遍历对象属性名与值

public string GetProperties<T>(T t) { string tStr = string.Empty; if (t == null) { return tStr; } System.Reflection.PropertyInfo[] properties = t.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public

241 获取对象的属性名:Object.keys(对象)

Object.keys(对象) :获取到当前对象中的属性名 ,返回值是有元素为字符串的一个数组,效果类似 for-in. <script> // 用于获取对象自身所有的属性 var obj = { id: 1, pname: '小米', price: 1999, num: 2000 }; var arr = Object.keys(obj); console.log(arr); // ["id", "pname", "price",

156 对象的理解和使用,什么时候必须 使用[&#39;属性名&#39;] 的方式

什么是对象? 多个数据(属性)的集合 用来保存多个数据(属性)的容器 属性组成: 属性名 : 字符串(标识) 属性值 : 任意类型 属性的分类: 一般 : 属性值不是function, 描述对象的状态 方法 : 属性值为function的属性, 描述对象的行为 特别的对象 数组: 属性名是0,1,2,3之类的索引 函数: 可以执行的 如何操作内部属性(方法) .属性名 <!DOCTYPE html> <html lang="en"> <head> &

使用对象中的几个key值来排序

环境:vs2012 win7 c++ 1 #include<alogrithem> 2 写一个比较函数,体现对象间是按照哪些key值来排序的. 3 使用std::sort函数. 例子如下: #include <algorithm> /* 排序规律: 星级最大的排前面,其次等级越大排前面,再其次是经验越大排前面,最后是其次是ID值越大排越后面. */ bool myCompare(GameCardVo* obj1,GameCardVo* obj2) { if (obj1->co

js中对象的属性名和属性值

代码 /** * 对象的属性名 * - 对象的属性名不强制遵循标识符的命名规范,可以是任意的名字,但在开发中 * 尽量遵循标识符的命名规范 */ // 创建对象obj1 var obj1 = new Object(); // 添加属性name obj1.name = "唐僧"; console.log(obj1); // {name: "唐僧"} /** * 如果要使用特殊的属性名,不能采用"."的方式来操作,需要使用另一种 * 方式: * 语法