作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我知道 JavaScript 中的数组是可变的。
意思是说如果我创建数组a
,和数组b = a
,那么如果我修改数组a
,修改也是可见的在数组 b
中。
但是,在下面的场景中,我不明白为什么 b
失去了对数组 a
的“引用”。
var a = [1,2,3];
var b = a;
console.log('a =', a);
console.log('b =', b);
a[0] = 4;
console.log('a =', a);
console.log('b =', b);
a = [5,5];
console.log('a =', a);
console.log('b =', b);
最佳答案
a
和 b
不是对彼此的引用 - 它们是对同一数组 的引用。
当您执行 a = [5,5]
时,您将 a
设置为一个全新的新数组,而 b
仍然指的是旧的。
关于javascript - 数组可变性和变量引用场景不清楚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56603680/
MVC3 中的助手是否在 Controller 和 View 中使用? 助手是放置常用 Controller 方法的正确位置吗? 我想创建一个通用方法来获取数据库中的所有子子 ID,并确保它位于正确的
有人可以阐明这两者之间的区别吗,因为它们存在于执行上下文中?我很难阅读 ECMA 262 v 5规范并清楚地看到差异。 谢谢你, 最佳答案 两者都是执行上下文的组件(相同类型),但它们有不同的用途(f
我是一名优秀的程序员,十分优秀!