在使用Highcharts插件绘图的过程中,我有需要显示当前数据的需要,其过程中需要对一个对象obj进行赋值,开始由于不熟悉js的赋值规则,用全局变量OBJ对其进行“=”;
即obj=OBJ;返回的obj始终是OBJ的结果,。经过翻阅资料,才知道obj=OBJ是对OBJ对象的引用,也可以理解为是传地址的操作。
正确的方法应该是obj=OBJ.slice();
其实,js有个规定:
1,数字和字符串是按值传递的(这里包括字符串对象和数字对象);
2,数组和对象时按地址传递。
在使用Highcharts插件绘图的过程中,我有需要显示当前数据的需要,其过程中需要对一个对象obj进行赋值,开始由于不熟悉js的赋值规则,用全局变量OBJ对其进行“=”;
即obj=OBJ;返回的obj始终是OBJ的结果,。经过翻阅资料,才知道obj=OBJ是对OBJ对象的引用,也可以理解为是传地址的操作。
正确的方法应该是obj=OBJ.slice();
其实,js有个规定:
1,数字和字符串是按值传递的(这里包括字符串对象和数字对象);
2,数组和对象时按地址传递。