广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Javascript中基本类型和引用类型是什么
  • 702
分享到

Javascript中基本类型和引用类型是什么

2024-04-02 19:04:59 702人浏览 独家记忆
摘要

这篇文章给大家分享的是有关javascript中基本类型和引用类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1.基础类型A. 基础类型有5种,Number,

这篇文章给大家分享的是有关javascript中基本类型和引用类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

 1.基础类型

A. 基础类型有5种,Number,String,Boolean,Null,Undefined

B. 基础类型没有堆的概念,堆只针对引用类型。

所有基础类型都是以key-value形式存放在栈中,其中,基础类型的值不可变,除非是重新赋值,

比如:

var a = "1234";
a[0] = "k";//对值本身修改,无效
console.log(a)//1234

a = "k";//重新赋值
console.log(a)//k

 2.引用类型

引用类型,如Array,Object,Function,Date,RegExp等

所有引用类型都是以key-value形式存放在栈中,其中,引用类型的key-value存放的value是指针地址,地址指向所在的堆的某个空间 ,这个空间存放着引用类型数据的值。

注意:

引用数据的值为 “堆值”,设堆值为value1 ,堆值对象内部的的key-value形式的value值为值中值 ,设此堆值为 “value2” ,在当前例子中,value1是可改变的,value2是不可改变的,除非是重新赋值。

比如:

// 堆值,即value1,可改变
var a = {"name":"jack"};
a = [];//重新赋值
console.log(a)// []
 
// 堆值中值,即value2,与基本数据类型一样不可改变
var a = {"name":"jack"};
a.name[0] = "0";
console.log(a)// {"name":"jack"}

3.传值与传址

如下图所示:

3.1 A代码块是传值

A代码块执行,a和b都会在栈区开辟一个空间用来存放值10,并且以key-value形式存放。A代码块是传值

3.2 B代码块是传址

B代码块执行,a1会开辟一个空间用来存放指针地址,然后a1的指针地址会赋值给b1,即b1同样会开辟一个空间用来放指针地址,而a1,b1指针地址指向的都是堆区的"堆值",即value1。

4.比较

4.1 基础类型的比较是值的比较

比如:

var a = 1;
var b = 1;
console.log(a == b);//true

4.2 引用类型的比较是引用的比较

同一个引用比较是可以相等,不同引用的比较不等。

比如:

//不同引用的比较
var p1 = {};
var p2 = {};
console.log(p1 == p2) //false
 
//不同引用的比较
var p3 = {"name":{},"age":30};
var p4 = {"name":{},"age":30};
console.log(p3.name == p4.name);//false(这个是引用比较)
console.log(p3.age == p4.age);//true(这个是值比较)
 
//同引用的比较
var p5 = {};
var p6 = p5;
console.log(p5 == p6)//true

如果引用被赋值别的类型,那么当前引用会被切断和值的指针地址。

如下图:

Javascript中基本类型和引用类型是什么

当a1重新赋值的时候,a1和 “ 堆值--> {} ” 的联系被替换成新的指针地址,即“ 堆值--> [] ”

感谢各位的阅读!关于“Javascript中基本类型和引用类型是什么”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Javascript中基本类型和引用类型是什么

本文链接: https://www.lsjlt.com/news/80216.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Javascript中基本类型和引用类型是什么
    这篇文章给大家分享的是有关Javascript中基本类型和引用类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1.基础类型A. 基础类型有5种,Number,...
    99+
    2022-10-19
  • JavaScript基本数据类型和引用数据类型是什么
    本篇内容主要讲解“JavaScript基本数据类型和引用数据类型是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript基本数据类型和引用数据类...
    99+
    2022-10-19
  • javaScript引用类型与基本类型有哪些
    这篇文章主要讲解了“javaScript引用类型与基本类型有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javaScript引用类型与基本类型有哪些”吧!  1. 概念:  基本类型也...
    99+
    2023-06-04
  • C#基元类型、值类型、引用类型是什么
    这篇文章主要讲解了“C#基元类型、值类型、引用类型是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#基元类型、值类型、引用类型是什么”吧!首先了解下什么是基元类型,基元类型是编译器直接...
    99+
    2023-06-17
  • JavaScript 基本数据类型和引用类型的区别是怎么样的
    这篇文章将为大家详细讲解有关JavaScript 基本数据类型和引用类型的区别是怎么样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。js基本数据类型:js...
    99+
    2022-10-19
  • JavaScript中有什么基本类型
    这篇文章主要为大家展示了“JavaScript中有什么基本类型”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript中有什么基本类型”这篇文章吧。 ...
    99+
    2022-10-19
  • JavaScript中引用类型之基本包装类型的示例分析
    这篇文章主要介绍JavaScript中引用类型之基本包装类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体如下:为了操作基本类型值,ECDMAScript提供了3个特殊...
    99+
    2022-10-19
  • javascript中原始类型和引用类型有什么区别
    小编给大家分享一下javascript中原始类型和引用类型有什么区别,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、区别(1)原始类型存储的是值,引用类型存储的...
    99+
    2023-06-15
  • js基本数据类型和引用数据类型的区别
    本篇内容主要讲解“js基本数据类型和引用数据类型的区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“js基本数据类型和引用数据类型的区别”吧!基本数据类型和引用...
    99+
    2022-10-19
  • JavaScript基本数据类型有什么
    本篇内容介绍了“JavaScript基本数据类型有什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、HTML:HTML超文本标记语言...
    99+
    2023-06-02
  • js中值类型和引用类型的区别是什么
    这篇文章主要介绍“js中值类型和引用类型的区别是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js中值类型和引用类型的区别是什么”文章能帮助大家解决问题。1.JavaScript中的变量类型有哪...
    99+
    2023-07-02
  • javascript引用类型指的是什么
    这篇文章主要介绍了javascript引用类型指的是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、概念引用类型有Object:Array、Function、Date、...
    99+
    2023-06-15
  • javascript中基本类型怎么赋值
    这篇文章给大家分享的是有关javascript中基本类型怎么赋值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、说明当从一个变量到另一个变量赋值的基本类型时,将在该变量上创建一个新值,然后将该值复制到为新变量分...
    99+
    2023-06-15
  • java中基本数据类型是什么
    小编给大家分享一下java中基本数据类型是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1、整型byte 、short 、int 、longbyte 的取值范围:-128~127(-2的7次方到2的7次方-1)shor...
    99+
    2023-06-15
  • c++中的基本IO类型是什么
    这篇文章主要讲解了“c++中的基本IO类型是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“c++中的基本IO类型是什么”吧!引言c++不直接处理输入和输出,而是通过标准库中的类型处理IO...
    99+
    2023-06-19
  • javascript引用类型的特性是什么
    这篇文章主要介绍javascript引用类型的特性是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、引用类型的值是可变的。var person = {};//创建个控对象 ...
    99+
    2023-06-15
  • Kotlin基本数据类型是什么
    Kotlin基本数据类型是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。fun main() {   &n...
    99+
    2023-06-22
  • 怎么解析Java性能优化中的基本类型与引用类型
    这期内容当中小编将会给大家带来有关怎么解析Java性能优化中的基本类型与引用类型,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。★名词定义  先明确一下什么是“基本类型”,什么是“引用类型”。  简单地说,...
    99+
    2023-06-02
  • JavaScript高级程序设计之基本引用类型
    目录1、Date2、RegExp3、原始包装类型前言: 引用值(对象)都是某个特定的引用类型的实例对象,例如 Date类型、Function类型,RegExp 正则表达式类型等等。J...
    99+
    2022-11-12
  • C#中的预定义类型与引用类型是什么
    今天小编给大家分享一下C#中的预定义类型与引用类型是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、预定义的值类型一个...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作