var post={};
post = this.data.info;
post.token=app.token;
post.positionname = post.position.positionname;
post.position = post.position.code;
//从头到尾没有改变过this.data.info的值,只是给post这个接收变量赋值了,但是结果打印的时候发现this.data.info的值都变得和post一样了
//求解答
//还有一个问题就是,代码从上到下的执行顺序,为什么:
var a=10;
console.log(a);
a=20;
//打印出来的是20,而不是10
如果是数组,可以用 array.concat()生成新的副本。如果是不带方法的数组或对象,也可用JSON.parse JSON.stringify 转一下
新手常见错误,object 和 array 这俩类型赋值的时候,是给的地址。一般的类型是给的值。var a = {b:1},var c = a,c.b=2 ,console.log(a.b) ,打出来就是2