首页 > js 对象的属性带[ 如何表示??

js 对象的属性带[ 如何表示??

  var params      = {};
  params.order_id = '2022555555';
  params.payment[pay_app_id]     = 'weixin';

上面的代码报错,我想给对象params 对象一个属性 payment[pay_app_id]
如何解决呢??


params['payment[pay_app_id]'] = 'weixin';


`

var params      = {};
params.order_id = '2022555555';
params['payment[pay_app_id]'] = 'weixin';

`


建议属性名中不要带有 '[]' 符号,通过 params["payment[pay_app_id]"] = 'weixin' 可以成功的设置属性的值,但是读取属性的值也只能使用这种方式读取 params["payment[pay_app_id]"] ;而不能使用‘ . ’的方式读取;在考虑到有可能会有其他人一起维护代码的情况,一旦其他人使用了‘ . ’的方式来读取就会出现错误。


var params      = {};
  params.order_id = '2022555555';
  params.payment = []; // 初始化payment
  params.payment['pay_app_id']     = 'weixin'; // 给payment添加pay_app_id属性

js中还有一种对象属性访问方式 params["payment[pay_app_id]"] 可以解决属性名中带符号的问题。

【热门文章】
【热门文章】