记录今天处理了2小时的BUG,代码以下:数组
var a ={ id:[1,2,3] } var d = a.id; d.push(4); console.dir(a);
我觉得预期是:a.id = [1,2,3],结果倒是 a.id = [1,2,3,4];
说明这是一个引用传递了。铭记~code
前天,5月19号,又遇到一个坑,原觉得:数组引用是一坑,暂时用:console
var a = [1,2,3]; var b = a.slice(); b[2] = 1110;
这样的方式解决了,但是当引用内好有引用时:引用
var a = [{id:1}]; var b = a.slice(); b[0].id = 2;
这样的方式赞成会遭遇坑,切记~di