JavaScript 原始类型与引用类型

157 阅读1分钟

在 javascript 中数据类型可以分为两类:

  • 原始数据类型值 primitive type,如Undefined,Null,Boolean,Number,String。
    • 这个被替换,原有的引用类型都会被替换
  • 引用类型值,也就是对象类型 Object type,如Object,Array,Function,Date等。
    • 这个被替换,只有当前的引用类型被改变
var obj1 = { value:'花点时间1' }; 
var obj2 = { value:'花点时间2' }; 
var foo = changeStuff(obj1); 
function changeStuff(obj){ 
    obj.value = '花点时间3';  //obj1的value也被更改了
    obj = obj2;              //obj1没被obj2替换 但obj被obj2替换
    return obj.value;        
} 
console.log(foo); // '花点时间2' 
console.log(obj1.value); //'花点时间3'

整个对象被替换

let zero = mesh.material[0]; //最后zero还是mesh.material[0]
mesh.material[0] = mesh.material[1]
mesh.material[1] = zero;