关于js的引用类型和基本类型

  看了那么多基本类型和引用类型的文章,自己也心血来潮想写一篇来巩固一下自己对于这个的理解。

  js的基本类型有null,undefind,Number,String,Boolean。而引用类型的有Arr,Function,Object。基本类型储存于栈,引用类型储存于堆。

  对于基本类型值和引用类型值的区别:

   引用类型值可添加属性和方法,而基本类型值则不可以。

     基本类型添加属性和方法的时候并不会报错(严格模式下会)var a = ‘lxy‘; a.name = ‘zzzz‘; console.log(a.name)   //undefined

     引用类型添加的属性和方法并不存在于对象本身上,他其实是引用于堆里面的那个引用对象上。

 

原文地址:https://www.cnblogs.com/xyyyy/p/8658787.html

时间: 2024-08-11 07:46:59

关于js的引用类型和基本类型的相关文章

JS 引用类型和值类型

自己的看高程3第五章应用类型的时候,有些迷糊,所以上网搜到这篇文章 转自求小天的博客园,地址:http://www.cnblogs.com/lxq1990/archive/2012/11/04/2754226.html 这个比喻很形象,帮助理解. js 值类型和引用类型 JavaScript值类型和引用类型有哪些 (1)值类型:数值.布尔值.null.undefined. (2)引用类型:对象.数组.函数. 如何理解值类型和引用类型及举例 我们可以用“连锁店”和“连锁店钥匙”来理解,不知道以下比

JS的数据类型-引用类型和基本类型

在面试中遇到的问题. 在JS中直到ES6有7种基本类型:string, number, boolean,null,undefined,object,以及ES6的symbol. 这7种基本数据类型又可以分为引用类型和基本类型. 引用类型有Object,Object又分为对象,数组,函数. 引用类型的特点是在赋值时,不管引用类型的数据被赋值给几个变量,内存中只有这一个数据,所有被赋值的变量都引用了这一个数据.且任何一个变量更改了值,所有引用了这个数据的变量的值也随之改变. 比如: var a = [

js之引用类型

一.摘要: <javascript高级程序设计第三版>一书中单独有一章对js的引用类型(Object.Array.RegExp.Function:基本包装类型:Boolean.Number.String:单体内置对象:Global.Math)做了详细的介绍,这里不会详细的总结各种引用类型的使用方法,主要是总结引用类型中toString().valueof().toLocalString()方法的使用. 二.总结: <javascript高级程序设计第三版>中对js中的object类

转战JS(1) 初探与变量类型、运算符、常用函数与转换

转战JS(1)初探与变量类型.运算符.常用函数与转换 做为一名.NET后台开发人员,正考滤向Web前端开发转型,之前也写过一代前端代码,可是当再回头看JS,并有转向它的意愿的时候,突然发现:原来JS不是那么简单的.很多的细节部分以前都没有注意到,现在把学习的知识点记录下来,做为学习笔记,好时不时看看.如果有什么错误,还请各位看官多多包涵.多多指正. JavaScript是一门轻量型的面向Web编程的脚本言语言,常被简称为:JS.广泛应用于PC和各种移动设备中,常和HTML.CSS一起组成网页页面

【转】c#引用类型与值类型的区别大盘点

解析:CLR支持两种类型:值类型和引用类型.用Jeffrey Richter(<CLR via C#>作者)的话来说,“不理解引用类型和值类型区别的程序员将会把代码引入诡异的陷阱和诸多性能问题”.这就要求我们正确理解和使用值类型和引用类型. 值类型包括C#的基本类型(用关键字int.char.float等来声明),结构(用struct关键字声明的类型),枚举(用enum关键字声明的类型):而引用类型包括类(用class关键字声明的类型)和委托(用delegate关键字声明的特殊类).C#中的每

C#引用类型和值类型的区别

1***.C#中有两种类型: 值类型和引用类型: 值类型的变量直接包含他们的数据,而引用类型的变量存储 引用类型存储对他们的数据的引用,后者称为对象: 简单说:值类型直接存储其值,引用类型存储对值得引用.引用类型分为引用和引用的对象. 2***. 值类型:简单类型.枚举.结构 引用类型: 类类型.接口类型.数组类型和委托类型 3***.值类型与引用类型的内存存储 单纯的说值类型存储在栈上,引用类型存储在托管堆上是不对的. 4***.区别: 1. 托管堆: 同步块和方法表, x,y,托管堆上的需要

12-12面向对象--引用类型与值类型、命名空间与类库

五.引用类型与值类型 .NET将变量的类型分为值类型与引用类型.例如int和float之类的变量属于值类型,而“类“类型的变量属于引用类型. 值类型与引用类型的变量在使用上是有区别的. 值类型的变量在一定义之后就可以马上使用. 引用类型的变量定义之后,还必须用new关键字创建对象后才可以使用. 如上图,创建两个新的对象时,直接比较两个对象是否相等,返回的bool值为false.因为两个对象都是新开辟的一个空间变量,彼此没有任何关系,所有是不相等的. 如图2:1)创建的第一个新的对象ss1,给ss

引用类型与值类型在编码上的区别

一.引入类型与值类型简介 值类型:直接存放于栈中,取的时候是直接取得值.值类型继承自System.ValueType.(自定义对象) 引用类型:存在于托管堆中,取的时候取的是该对象的地址,然后用这个地址去托管堆中取值.引用类型继承自System.Object.(int,bool) 二.在代码编写上的区别 在赋值的时候,值类型是复制一份,新的和旧的在以后的操作中互不影响,而引用类型复制的只是地址,在以后的修改中,修改新的旧的也会受到影响. 代码示例: static void Main(string

.NET 基础 一步步 一幕幕[面向对象之堆、栈、引用类型、值类型]

堆.栈.引用类型.值类型 内存分为堆和栈(PS:还有一种是静态存储区域 [内存分为这三种]),值类型的数据存储在栈中,引用类型的数据存储在堆中. 堆.栈: 堆和栈的区别: 栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义:局部值类型变量.值类型参数等都在栈内存中. 堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小. 引用类型.值类型 1.将一个值类型变量赋给另一个值类型变量时,将复制包含的值.引用类型变量的赋值只复制对对象的引用,而不复