JavaScript的七种数据类型

  我知道这个话题网上说法非常多,甚至还有分出什么"Array,Function"之类的阿猫阿狗的类型。今天来整理这个话题的时候,先贴一张MDN官方的说法:

  这个分法是对的,也是目前来讲最正确的。一共就七种。即(Number,Boolean,String,Null,Undefiend,Symbol,Object),之所以用英文小写,是因为typeof输出的就是英文小写。

  JavaScript的数据类型,可以分为两种:一种是值类型(或者叫原始类型、基本类型),还有一种是引用类型(或者叫对象类型)。

  所谓值类型,就是可以靠传值赋值的,每赋值一次,内存中就新开出一块地方来储存这个数据,包括Symbol也是一样。其中Symbol类型中文名叫“符号类型”。但是Symbol类型的特殊之处在于,他虽然是基本类型,但却独一无二,两个Symbol类型的值即使看起来一模一样,生成的方法如出一辙,也一定不是全等。

  而引用类型是指:内存中只有唯一的一块地方来储存这个数据,以后的所有赋值都是传址赋值。也就是说,它只是发放一些“廉价的内存指针”,来指向内存中的这个数据。官方一点的说法:对象是指内存中的可以被 标识符引用的一块区域.

   广义的引用类型(对象类型)包括:标准对象、数组、正则对象、日期对象等;

  再次说明一下,数组是一种键为下标,值为子元素的特殊对象。

  

  用Object.keys是可以验证这一点的,以后谁要是在数据类型中再分什么"Object、Array",我看到非揍死他不可。

  

  

原文地址:https://www.cnblogs.com/zhangnan35/p/10955656.html

时间: 2024-10-03 23:17:35

JavaScript的七种数据类型的相关文章

JavaScript中七种数据类型·中·一

Standing on Shoulders of Giants; 说到JavaScript里的类型很容易就让人想起 42和"42",分别是string型和number型,但是他们可以直接进行运算.这就是Js里面有趣又让人头疼的问题了.JavaScript会进行==强制类型转换== 下面我们就正式来认识一下JS中的类型吧: 1.内置类型 JavaScript有七种内置类型: 2.类型检测 typeof 1 typeof undefined === 'undefined';//true 2

JavaScript 七种数据类型

在 JavaScript 规范中,共定义了七种数据类型,分为 "基本类型" 和 "引用类型" 两大类,如下所示: 基本类型:String.Number.Boolean.Symbol.Undefined.Null 引用类型:Object 下面将详细介绍这七种数据类型的一些特性. 1.String 类型 String 类型用于表示由零或多个 16 位 Unicode 字符组成的字符序列,即字符串 . 1.1 存储结构 由于计算机只能处理数字,如果要处理文本,就必须先把文

JavaScript中七种函数调用方式及对应 this 的含义

http://blog.sina.com.cn/s/blog_621f1e120100rj21.html this 在 JavaScript 开发中占有相当重要的地位,不过很多人对this这个东西都感觉到琢磨不透.要真正理解JavaScript的函数机制,就非常有必要搞清楚this到底是怎么回事. 函数调用方式不同,this 含义也跟着不同.JavaScript语言中有七种调用函数方式: 第一种:调用方法var obj = {    method: function() { alert(this

javascript 的七种基本数据类型

六种基本数据类型 undefined null string boolean number symbol(ES6) 一种引用类型 Object 为什么要引入 Symbol? ES5的对象中的属性名是字符串,容易造成属性名的冲突,如果有一种机制,保证每个属性的名字都是独一无二的,就可以从根本上防止属性名的冲突. Symbol怎么生成? symbol值通过Symbol函数生成,生成的symbol是一个类似于字符串的原始类型的值 const sym = Symbol(param): // param

php 七种数据类型介绍

PHP有7个数据类型.七个类型: 字符串, 整数, 浮动, 布尔, 数组, 对象, 资源. 字符串 字符串保持字符,如“一”.“abc”,“www.manongjc.com”等.PHP字符串是区分大小写的. 对象 有多个值对象是复杂的变量,他们可以有自己的功能. 资源 资源可能是图片数据,或者一个SQL查询的结果.我们应该使用它们后释放资源. 原文地址:http://www.manongjc.com/article/1000.html 相关阅读: php 获取表单复选框checkbox值一个简单

JavaScript的五种数据类型以及数据类型的转换

数据类型 1.Number包括整数和浮点数 1,2.34 2.String字符串数据类型 " " 或者 ' '构成 var s="hello" var s2 = "\u4f60\u597d\n欢迎来到\"JavaScript\世界\\"" alert(s2); 3.Boolean : true,false用于条件判断 if (false) { alert("sucess!") } 4.Undefiend:u

面试中经常问到的Redis七种数据类型,你都真正了解吗?

前言 Redis不是一个简单的键值对存储,它实际上是一个支持各种类型数据结构的存储.在传统的键值存储中,是将字符串键关联到字符串值,但是在Redis中,这些值不仅限于简单的字符串,还可以支持更复杂的数据结构.下面就是Redis支持的数据结构: 字符串(String):二进制安全字符串. 列表(List):根据插入顺序排序的字符串元素列表,基于链表实现. 集合(Set):唯一的乱序的字符串元素的集合. 有序集合(Sorted Set):与集合类似,但是每个字符串元素都与一个称为score的数字相关

String数据类型转换成long、int、double、float、boolean、char等七种数据类型

String c="123456"; //当String类型数据 要转换成int.double.float.long等数据类型时,其数据必须由数字构成, //当String类型数据由汉字或字母组成时转换成int.double.float.long等数据类型时,程序报错 //String类型转换成long类型 //String类型数据转换成long类型时 String类型的数据必须是数字构成 long n=Long.parseLong(c); System.out.println(&qu

javascript中几种数据类型。

1,基本类型:字符串类型(string),数字类型(number),布尔类型(boolean)2,复杂类型:数组类型(array),对象类型(object),函数类型(function),正则类型(regexp)3,空类型:undefine  和 null 字符串转数字类型方法:1,加减乘除取余 接字符串 隐士转换 2,parseInt(字符串)  转为整数 3,parseFloat(字符串)  转为浮点数类型 4,number  (字符串) 数字转字符串类型方法:1,.toString() 2