基本类型和引用类型

基本类型

指的是保存在内存中的简单数据段

数值,布尔值,null和undefined

引用类型

指的是那些保存在内存中的对象,变量中保存的实际上只是一个指针,这个指针执行内存中的另一个位置,由该位置保存对象

对象,数组,函数,正则
示例

    var a;
    var b;
    var obj;
    var obj2;

    a = 1;
    b = 2;

    var obj = {
        name: 'jane',
        sex: 'female',
        age: 27,
        friend: {
            name: 'haha', 
            age: 30
        }
    }
    var newObj = {};
    b = a;
    console.log(b);
// 将a的值赋给b,结果为1

    var obj2 = obj;
    var obj3 = {name: 'haha'};
    var obj4 = {name: 'haha'};
    obj3 === obj4
// false obj3和obj4中保存的对象是指向对象在内存中位置的的指针,所以obj3和obj4不相等
    function sum(){
        console.log('sum...')
    }
    var sum2 = sum;
    sum2()
// sum... 将sum的值赋给sum2

函数的参数传递

function inc(n){
n++;
}
// function inc(){
// var n = arguments[0];
// n++;
// }
var a = 10;
inc(a);
console.log(a);//10
function incObj(obj){
obj.n++;
}
// function incObj(){
// var obj = arguments[0];
// obj.n++;
// }
var o = {n: 10};
incObj(o);
console.log(o);//11

你可能感兴趣的:(基本类型和引用类型)