Javascript——数据类型存储方式的区别

  • JavaScript 由于是一个脚本语言,需要依赖于浏览器执行,所有JavaScript不能直接访问电脑的内存空间,所以当浏览器运行时,会占用一段内容空间,并将占用的内存空间分配一部分给JavaScript
    Javascript——数据类型存储方式的区别
    文章图片
  • JavaScript 内存空间
    Javascript——数据类型存储方式的区别
    文章图片

    • 栈内存:先进栈低
    • 堆内存:随机存储
  • JavaScript数据类型的存储方式
    • 基本数据类型的存储方式:将数据存入到栈空间
    • 复杂数据类型的存储方式:将数据存在堆空间,将地址存在栈空间
      • 数据的读取:由于只能直接访问栈空间,所以基本数据类型可以直接获取,而复杂数据类型需要先在栈空间获取数据存储地址,再通过这个地址去访问堆空间内存储的数据
  • 不同数据类型赋值的区别
    • 基本数据类型:将一个变量的值赋给另一个变量,赋值完成后,这两个变量操作时互不影响
    • 复杂数据类型:将一个变量的值赋给另一个变量,其实相当于把地址赋给另一个变量,这样另一个变量也可以访问这个地址的堆空间,操作时两个变量会相互影响
  • 函数的内存空间
    【Javascript——数据类型存储方式的区别】函数的内存空间一部分存储代码,一部分存储数据,两部分空间互不干扰
    • 函数名(); 表示当作一个函数使用,进行函数调用
    • 函数名.成员名=值表示一个对象,进行操作对象
      Javascript——数据类型存储方式的区别
      文章图片

    推荐阅读