返回顶部
首页 > 资讯 > 前端开发 > JavaScript >浅析JS原始值和引用值问题
  • 422
分享到

浅析JS原始值和引用值问题

2024-04-02 19:04:59 422人浏览 安东尼
摘要

原始值->基本类型 Number String Boolean undefined null 存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置

原始值->基本类型

Number String Boolean undefined null

存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置

动态语言->脚本语言->解释型语言->弱类型语言

静态语言->编译型语言->强类型语言

null 空值 初始化组件 函数 销毁函数 占位

引用值

object array function date RegExp

如果一个值是引用类型的,那么它的存储空间将从堆中分配。由于引用值的大小会改变,所以不能把它放在栈中,否则会降低变量查寻的速度。相反,放在变量的栈空间中的值是该对象存储在堆中的地址。地址的大小是固定的,所以把它存储在栈中对变量性能无任何负面影响。
ex


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>D1</title>
</head>
<body>
    <script type="text/javascript">
        var arr1 = [1,2,3,4];
        var arr2 = arr1;
        //arr1.push(5);//此时打印arr2为1,2,3,4,5
        arr1 = [1,2];//重新赋值不会影响arr2
        document.write(arr2);
    </script>
</body>
</html>

到此这篇关于js原始值和引用值 的文章就介绍到这了,更多相关JS原始值和引用值 内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 浅析JS原始值和引用值问题

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

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

猜你喜欢
  • 浅析JS原始值和引用值问题
    原始值->基本类型 Number String Boolean undefined null 存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置 ...
    99+
    2024-04-02
  • JS原始值和引用值怎么理解
    这篇文章主要介绍“JS原始值和引用值怎么理解”,在日常操作中,相信很多人在JS原始值和引用值怎么理解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JS原始值和引用值怎么理解”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-22
  • JavaScript中原始值和引用值深入讲解
    目录值和引用相关内容1. 简单值(原始值)2. 复杂值(引用值)3. 访问方式4. 比较方式5. 动态属性6. 变量赋值灵魂拷问总结值和引用相关内容 在 JavaScrip...
    99+
    2022-11-13
    js中的原始值 原始值和引用值的区别 js原始值有哪些
  • 关于ECMAScript中的原始值和引用值详解
    目录前言什么是动态属性 值的复制 判断值类型 总结前言 这应该是很基础的 JavaScript 的知识点,但估计很多小伙伴都只是简单带过,到面试时一问三不知。这里结合我之前的笔记,再...
    99+
    2024-04-02
  • 浅析JavaScript对象转换成原始值
    目录前言三种算法对象转换成布尔值对象转换成字符串对象转换成数值转换时使用的方法toString()valueOf()转换算法偏字符串算法偏数值算法无偏好算法练习题前言 首先抛出几个问...
    99+
    2024-04-02
  • python按引用赋值和深、浅拷贝
    按引用赋值而不是拷贝副本 在python中,无论是直接的变量赋值,还是参数传递,都是按照引用进行赋值的。 在计算机语言中,有两种赋值方式:按引用赋值、按值赋值。其中按引用赋值也常称为按指针传值(当然,它们还是有点区别的),后者常称为拷贝副...
    99+
    2023-01-30
    赋值 和深 python
  • JavaScript 引用类型之原始值包装类型String
    目录String 原始值包装类型String 原始值包装类型 操作方法1.字符串编码常规化函数 normalize()方法2.字符串拼接函数concat()3.字符串提取子...
    99+
    2024-04-02
  • 一文浅析Vue中父子组件间传值问题
    vue父子组件之间怎么传值?下面本篇文章带大家了解一下Vue中父组件以及子组件传值问题,希望对大家有所帮助!前言:在一些页面中不单单的纯纯的一个vue文件,vue讲究组件化开发,但是一般的肯定会产生交互事件,今天了解了这个传值,特此的来记录...
    99+
    2023-05-14
    组件传值 vue组件传值 Vue
  • vue3原始值响应方案及响应丢失问题解读
    目录前言一、ref 的引入二、isref 的实现三、响应丢失1、toRef登场2、toRefs 加入3、诡异的其它响应式丢失情况四、unref 自动脱 ref   ...
    99+
    2023-05-16
    vue3原始值响应 vue3响应丢失 vue3响应
  • js数组直接赋值的问题(js数组的浅拷贝与深拷贝方法)
    1、数组的直接赋值属于数组的浅拷贝,JS存储对象都是存内存地址,所以浅拷贝会导致新数组和旧数组共用同一块内存地址,其中一个数组变化,另一个数组也会相应的变化。 var a =[1,2...
    99+
    2022-11-13
    JS数组直接赋值 js数组浅拷贝 js数组深拷贝 js array直接赋值 js array浅拷贝 js array深拷贝
  • java经典问题:传值还是传引用(转)
    java经典问题:传值还是传引用(转)[@more@]经典的问题,但却不容易弄懂,尤其对有c基础的java程序员来说,更容易引起混乱,这里我试图简单点描述。 “java函数是传值的,java函数传递的参数是对象的引用” 这两句话好像初听上去...
    99+
    2023-06-03
  • C#调用C++DLLbool返回值始终为true的问题
    目录C#调用C++ DLL bool返回值始终为true问题描述问题原因解决方案C#调用C++的DLL返回值为bool时,值混乱解决方案C#调用C++ DLL bool返回值始终为t...
    99+
    2022-11-13
    C#调用C++ DLL C++ DLL C++ DLL bool返回值 bool返回值为true
  • vue3原始值响应方案及响应丢失问题怎么解决
    一、ref 的引入ref 就是解决 proxy 无法直接代理原始值的问题。我们先来看 ref 的使用:const name = ref('小黑子')ref 是怎么实现的呢?其实就是用对象“包裹”原始值。我们再来看一下 ref...
    99+
    2023-05-14
    Vue3
  • js中值类型和引用类型的区别介绍
    1.JavaScript中的变量类型有哪些? (1)值类型(基本类型):字符串(string)、数值(number)、布尔值(boolean)、undefined、null ...
    99+
    2024-04-02
  • 浅析php post提交取不到值的原因和解决方法
    在使用PHP时,我们常常会遇到POST提交表单却无法获取表单数据的情况,可能会让我们感到困惑。这种情况很常见,但也很容易解决。本文将介绍在Post提交表单时无法获取表单数据的原因及解决方法。一. 原因分析网络问题在网络连接不稳定的情况下,P...
    99+
    2023-05-14
  • python 闭包中引用的变量值变更问题
    python的闭包当内层函数引用外层函数的局部变量时,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。如下:def count():     fs = []     for i in range(1, 4):         de...
    99+
    2023-01-31
    包中 变量值 python
  • C++中指针问题和引用问题解析
    C++中指针问题和引用问题解析引言:在C++编程中,指针和引用是两个重要的概念。它们都可以用于间接访问变量,但在使用过程中有一些差异。本文将从定义、语法、使用和特点等方面详细解析指针问题和引用问题,并提供具体的代码示例。一、指针问题解析定义...
    99+
    2023-10-22
    指针 引用 解析
  • 浅析MySQL索引结构采用B+树的问题
    目录1、B树和B+树2、原因分析3、总结一位6年经验的小伙伴去字节面试的时候被问到这样一个问题,为什么mysql索引结构要采用B+树?这位小伙伴从来就没有思考过这个问题。只因为现在都这么卷,后面还特意查了很多资料,他也希...
    99+
    2022-06-21
    mysql 索引B+树 MySQL索引结构
  • JS中值传递和引用传递的区别有哪些
    这篇文章主要介绍了JS中值传递和引用传递的区别有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。JS是什么JS是JavaScript的简称,它是一种直译式的脚本语言,其解释...
    99+
    2023-06-14
  • js中值类型和引用类型的区别是什么
    这篇文章主要介绍“js中值类型和引用类型的区别是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js中值类型和引用类型的区别是什么”文章能帮助大家解决问题。1.JavaScript中的变量类型有哪...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作