写代码的时候遇到这个问题,怎么在对象中添加动态的key和value,从网上百度了下果然有,在这记录一下,大神请无视。
至于怎么动态,循环或者怎样就不说了。
说一下原理,先看代码:
1 //定义key和value的值 2 var key = "name"; 3 var value = "lqj12138"; 4 5 //声明一个对象 6 var param = {}; 7 8 //将执行语句声明为字符串 9 var str = "param." + key + "=" + value; 10 11 //使用eval执行 12 eval(str);
应该都可以看懂,很简单。
key和value的值可以随意定义,就动态给他们赋值,然后执行下面的语句就可以动态添加了。
当然使用param[key]=value更简单,但是这两种方法是有区别的,如果value中两边有引号,比如"lqj12138",使用代码中的方法得到的是name:"lqj12138",没有引号,使用param[key]=value则会有引号得到的结果应该是name:""lqj12138"",所以看情况选择使用。
菜鸟一只,大神勿嘲。