关于json的键名为变量的问题

今天做后台整合的时候,遇到一个对象的中key名为一个变量的问题:

看后台提供的参数格式:

访问路径:/sf/service/user/find/list

请求方式:GET

请求参数:requestParams //参数需要URL编码encodeURIComponent(JSON.stringify(obj)) 


   查询JSON实例:

   {
     condition:{
		companyId: ,             // int, default is null
		firstName : ,             // string, default is null
		lastName: ,              //  string, default is null
		enabled:                  // true or false, default is null
	         },
          order:{

                 // fieldName 是一个动态的属性, 它可以是id/firstName/lastName/login/companyName/email
                 // value  只允许两个值 'asc' 或  'desc'. 默认是'asc'

                       fieldName: value 
               
                  },
     pageNum:        //页数
   } 
         

看需求这个字段(即键的名字“

fieldName”)是一个变量,根据不同的传值作修改。

我的做法

var fieldName=_fieldName;//定义为变量
  var obj= {
     condition:{
   companyId:_companyId ,             // int, default is null
    firstName : _firstName,             // string, default is null
    lastName: _lastName,              //  string, default is null
    enabled: _enabled                 // true or false, default is null
           },
          order:{
                 // fieldName 是一个动态的属性, 它可以是id/firstName/lastName/login/companyName/email
                 // value  只允许两个值 'asc' 或  'desc'. 默认是'asc'
                  },
     pageNum:_pageNum        //页数
   };
   obj.order[fieldName]=_value//然后添加进去

先在对象中删除这个,然后用[]符增加一个。

写法总结:

var fieldName = "email";
var order = {};
order[fieldName] = "asc"



你可能感兴趣的:(javascript,JavaScript,相关知识)