ES变量有两种不同的数据类型:基本数据类型和引用数据类型。

  1. 基本数据类型
    基本数据类型有:undefined,boolean,number,string,null。
    基本数据类型的访问是按值访问的,换句话讲就是可以操作保存在变量中的实际的值。
    基本数据类型的变量是存放在栈内存的。
/**2. 基本数据类型*/
var a=100;
var b=a;  //此时a、b值都为100,但两者相互独立
a++;
console.log("a="+a); //a=101
console.log("b="+b);  //b=100

  1. 引用数据类型

引用数据类型可以理解为对象。对象是属性和方法的集合。
引用数据类型可以拥有属性和方法,属性又可以包含基本类型和引用类型。
引用数据类型的值是按引用访问的。
准确地说,引用类型的存储需要内存的栈内存和堆内存共同完成,栈内存保存变量标识符和指向堆内存中该对象的指针,也可以说是该对象在堆内存的地址。
引用数据类型的赋值其实是对象保存在栈内存地址指针的赋值,因此两个变量指向同一个对象,任何的操作都会相互影响。
但当将其中一个变量赋值为null时,该变量与堆内存连接断开,对其他变量不造成影响。


/*** 引用数据类型*/
var obj1=new Object();
obj1.name="Febby";
var obj2=obj1;obj2.name="Jack";  //改对象,对obj1有影响//obj2=null与堆内存连接断开,与obj无关
obj2=null;  //改变量,对obj1无影响console.log(obj1.name); //Jack
console.log(obj2.name); //Cannot read property 'name' of null

希望可以帮到大家~~~

浅谈js基本数据类型与引用数据类型的引用相关推荐

  1. 浅谈 js 数字格式类型

    原文:浅谈 js 数字格式类型 很多人也许只知道 123,123.456,0xff 之类的数字格式. 其实 js 格式还有很多数字格式类型,比如 1., .1 这样的,也有 .1e2 这样的. 可能有 ...

  2. php字面量,浅谈js之字面量、对象字面量的访问、关键字in的用法

    一:字面量含义 字面量表示如何表达这个值,一般除去表达式,给变量赋值时,等号右边都可以认为是字面量. 字面量分为字符串字面量(string literal ).数组字面量(array literal) ...

  3. 浅谈JS中常见的问题(三)

    往期文章目录 浅谈JS中常见的问题(一) 浅谈JS中常见的问题(二) JS知识总结 往期文章目录 前言 11. 同步和异步的区别 12. JS 判断变量类型的几种方法 13. 如何阻止事件冒泡与默认事 ...

  4. 浅谈js数据类型识别方法

    js有6种基本数据类型  Undefined , Null , Boolean , Number , String ,Symbol和一种引用类型Object,下面我们就来一一看穿,哦不,识别他们. t ...

  5. 浅谈js执行的AO/VO

    浅谈AO/VO详解 首先说明一下AO和VO的含义 AO:Activive Object,即函数的活动对象. VO:Variable Object,即变量对象. 它们的作用是帮助js引擎在引用变量的时候 ...

  6. js架构设计模式——由项目浅谈JS中MVVM模式

    1.    背景 最近项目原因使用了durandal.js和knockout.js,颇有受益.决定写一个比较浅显的总结. 之前一直在用SpringMVC框架写后台,前台是用JSP+JS+标签库,算是很 ...

  7. 由项目浅谈JS中MVVM模式

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.    背景 最近项目原因使用了durandal.js和knock ...

  8. 浅谈js原型和原型链

    一.简述 对于javascript 对象(函数) 原型和原型链的理解,其实不那么难,简单来说,需要理解什么是原型,怎么访问原型,什么是原型链,怎么通过原型链去访问原型,就可以大概理清楚原型和原型链的基 ...

  9. 浅谈js中的var和function变量提升,var声明变量提升,块级作用域中的函数提升

    1.首先最常见的一种变量提升 console.log(a); //输出 undefinedvar a=10;console.log(a) // 输出 10 var 有提升的作用其实上面的代码会变成会变 ...

最新文章

  1. 面向对象编程之:封装、继承、多态
  2. 播放生成Android4.0.3中的提示音
  3. 淘宝上的所有cuda书籍调研
  4. 《英雄联盟》出现大面积闪退;两名 95 后大学生用脑电波写“福”字;Windows蓝屏为什么是蓝底白字? | 极客头条...
  5. java 数组 存储_Java-将数组存储到内存或从内存上传到磁盘
  6. React taro 微信小程序上传文件 多个文件上传
  7. 得到app产品体验报告
  8. 自动将视频文件生成字幕的软件autosub安装及使用(支持英文、日语和法语)
  9. JAVA实现时间换算
  10. sourceTree 问题解决
  11. mysql 从大到小排序
  12. 小数,分数,百分数及倍数的怎么表达?怎么读? kira86 于2010-07-07发布 l 已有1958人浏览增大字体 减小字体 常态文玩 数百名外教任意选,每天陪你练口语 一个积分学英语,您的账户
  13. Matplotlib 箱线图
  14. 解决 `Failed to connect to github.com port 443: Connection refused`
  15. win11 自带远程桌面使用(包含非局域网使用以及win11升级为专业版)
  16. C# dotnet 使用 OpenXml 解析 PPT 元素的坐标和宽度高度
  17. Java百度识别身份证照片、驾驶证识别
  18. 名帖366 鲜于枢 草书《韩愈石鼓歌》
  19. nltk词性标注英文简称及分类
  20. 从服务器收到意料之外的响应,WordPress出现“从服务器收到预料之外的响应。此文件可能已被成功上传。请检查媒体库或刷新本页。”错误的解决方法...

热门文章

  1. 期待我的西行之旅--后会无期观后感
  2. IsNaN函数的使用
  3. 教你如何锁定移动硬盘盘符
  4. 下载钉钉直播回访视频
  5. IT运维人员的神兵利器
  6. Background Matting V2 学习
  7. vue仿iview穿梭框组件
  8. 9大变化 3G iPhone普通iPhone对比评测
  9. Java中byte转int的方法
  10. 远程开关机神器Wake On LAN,免费有中文版