对基本数据类型的赋值很简单的.基本类型存储了实际的数值,而并非指向一个对象的引用,所以在赋值的时候,是直接将一个地方的内容复制到另一个地方.对于a=b,修改b后并不会影响到a,这正是我们大多数情况下所期望的. 但是在对对象“赋值”的时候,情况却发生了变化,对一个对象进行操作时,我们真正操作的是对对象的引用.所以倘若“将一个对象赋值给另一个对象“的时候,实际上是将“引用”从一个地方复制到另一个地方.这意味着假若对对象使用c=d,那么c和d都指向原本d指向的那个对象. class Tanked{ i…
这个问题说大不大说小不小,如果你有幸踩了这个坑,一定会找这篇文章,哈哈~ 现说一下JS数字的类型:基本类型和引用类型 先看下下面两个栗子: var a = 30; var b = a; a = 20; console.log( b ) // 30 var a = [1,2]; var b = a; a[0] = 5; console.log( b ) // [5,2] 简单的说: number,string类型都是基本类型,而基本类型存放在栈区,访问时按值访问,赋值是按照普通方式赋值: 对象和数…