Javascript中的数据类型

你好,朋友

在js中分为基本数据类型和引用数据类型

Javascript有六种基本数据类型(也就是简单数据类型),它们分别是:UndefinedNullBooleanSymbol(es6新增),NumberString。还含有一种复杂数据类型,就是Object

注意:Undefined和Null的区别~

  • Undefined和Null类型都只有一个值,分别为undefined和null
  • undefined其实就是已声明未赋值的变量输出的结果,null其实就是一个不存在的对象的结果
var name;
console.log(name)  //undefined
console.log(document.getElementById('box'))//没有id为box的节点,输出null  

基本数据类型和引用数据类型的区别

  • 基本数据类型保存那些基本数据片段,而引用数据类型中保存着对堆内存中对象的引用,是一个指针。与其他语言的不同是,你不可以直接访问堆内存空间中的位置和操作堆内存空间。只能操作对象在栈内存中的引用地址。

  • 引用类型数据在栈内存中保存的实际上是对象在堆内存中的引用地址。通过这个引用地址可以快速查找到保存中堆内存中的对象。

  • 在将一个保存着基本数据类型的变量复制给另一个变量时,会将原始值的副本赋值给新变量,此后这两个变量是完全独立的,他们只是拥有相同的value而已。

  • 在将一个保存着对象内存地址的变量复制给另一个变量时,会把这个内存地址赋值给新变量,也就是说这两个变量都指向了堆内存中的同一个对象,他们中任何一个作出的改变都会反映在另一个身上。(这里要理解的一点就是,复制对象时并不会在堆内存中新生成一个一模一样的对象,只是多了一个保存指向这个对象指针的变量罢了)。

  • 可以为引用数据类型值添加属性和方法,不可以为基本数据类型值添加属性和方法。

基本数据类型赋值的过程:

基本数据类型赋值的过程

      var a = 10;
      var b = a;

引用数据类型赋值过程:

引用数据类型赋值过程

     var obj1 = {
                   name:"tom",
                   age:18
                };

     var obj2 = obj1;
     
     obj2.name = "jack";

     console.log(obj1.name)  //jack
     这个预期往往不是我们想要的~

欢迎小伙伴们提出自己的见解
更多博客请前去我的github
If this article has give you some help . why don't give me a star✨!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,256评论 0 13
  • 最新的 ECMAScript 标准定义了两大类 7 种数据类型: 第一类 - 原始类型(即基本类型6 种):Num...
    显卡84du阅读 151评论 0 0
  • 恋人之间总有一双传神的眼 让你沦陷让你无限想念 每当下雨花开 都会渴望一种陪伴 让回忆的时光里多些片段 可以为一个...
    煜龙小窝阅读 216评论 2 0
  • 2017年10月19日 今天第二次参加了辽宁省亲子教育研究会的快速阅读活动,本次阅读的书目是《关键对话》如...
    高澎阅读 533评论 0 0
  • Switch Shop This Plugin allows you to set up a Shop for t...
    沧笙阅读 1,807评论 0 16