• 基本数据类型 && 引用数据类型


    JS的变量都是保存在栈内存中

    基本数据类型:
    基本数据类型的值直接在栈内存中存储,值与值之间是独立的,修改一个变量不会影响基本的变量
    引用数据类型
    引用数据类型是地址是保存在栈内存中,值保存在堆内存中,每创建(new)一个新的对象,就会在堆内存开辟一个新的空间,而变量保存的是对象的地址(对象的引用)
    
    例:
        var obj = new Object()  ---- 在堆内存中开辟一个空间,在栈内存中保存的是obj的堆内存的地址
        obj.name = "Asher" ---- 往变量对应的地址去添加(堆内存中添加)
        
        var obj2 = obj ---- 将obj的地址复制给obj2,所以obj2和obj 指向同一个地址
        
        obj.name = "gaoxue"  ---- obj2也发生改变,两个变量保存的是同一个对象引用,当一个通过一个变量修改属性时,另一个也会受到影响
        
        obj2 = null; ---- 当修改变量值的对象,别一个变量不会受到影响

    当比较两个基本数据类型时就是比较值
    var a = 10;
    var b = 10;
    a == b true
     
    比较两个引用数据类型时,它是比较的对象的内存地址,如果 两个对象一模一样但是地址是不同的,所以返回false  
    var obj = new Object()
    var obj2 = new Object()
    obj == obj2 false
  • 相关阅读:
    Java实现直接插入查找
    CSS hack常用方案(摘选)
    输入一个字符串,去掉重复的字符,并按ASCII值排序-华为机试
    git操作github
    简单记录下idea上配置spring
    mysql国内镜像下载网址
    tomcat启动不成功(点击startup.bat闪退)的解决办法
    Encode and Decode TinyURL
    leetcode 4Sum II
    leetcode two sum
  • 原文地址:https://www.cnblogs.com/Asher7273/p/10189688.html
Copyright © 2020-2023  润新知