返回顶部
首页 > 资讯 > 精选 >JavaScript的八种数据类型分别是什么
  • 645
分享到

JavaScript的八种数据类型分别是什么

2023-06-26 04:06:46 645人浏览 独家记忆
摘要

小编今天带大家了解javascript的八种数据类型分别是什么,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“JavaScript的八

小编今天带大家了解javascript的八种数据类型分别是什么,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“JavaScript的八种数据类型分别是什么”的知识吧。

一、前言

在ES5的时候,我们认知的数据类型确实是 6种:NumberStringBooleanundefinedobjectNull

es6 中新增了一种 Symbol 。这种类型的对象永不相等,即始创建的时候传入相同的值,可以解决属性名冲突的问题,做为标记。
谷歌67版本中还出现了一种 bigInt。是指安全存储、操作大整数。
所以:准确来说目前js数据类型总共有8种!

  • Number

  • String

  • Boolean

  • Null

  • Undefined

  • Object

  • Symbol

  • BigInt

按照类型来分有基本数据类型和引用数据类型:

基本数据类型:StringNumberBooleanNullUndefinedSymbol

引用数据类型:Object【Object是个大类,function函数、array数组、date日期...等都归属于Object】

二、动态数据类型

JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型

JavaScript中变量似乎很简单,因为它声明变量只需要一个“var”就可以,不像其他编程语言严格区分了数据类型(int/double/char/boolean...)。这样做也是有好处的,变量可以被赋予任何类型的值,同样也可以给这个变量重新赋予不同类型的值。并不是“一定终身”

var x = 1;        //number类型var x = 0.1;     //number类型,JS不区分整数值和浮点数值//现在x由number变成stringvar x = "hello world"; //由双引号内文本构成字符串var x = 'javascript';   //单引号内文本同样可以构成字符串//现在x由string变成booleanvar x = true;    //true和false作为布尔值var x = null; var x = undefined;  //null和undefined很相似,是特殊的类型

2.1 字符串string

字符串是存储字符(比如 "Bill Gates")的变量

字符串可以是引号中的任意文本。可以使用单引号或双引号

  • 使用单引号或者双引号,没有区别

  • 单引号不要嵌套单引号。双引号同理,非要嵌套需要对引号进行转义 \' \"

var str = '孙悟空'; //单引号字符串var str2 = '猪八戒'; //双引号字符串

其他转义字符:

  • \n 表示换行符

  • \r 表示回车符

  • \t 水平制表符 tab

  • \' 单引号     

  • \" 双引号     

  • \\ 反斜杠 

  • \uXXXX 四位十六进制表示unicode字符串

  • \xXX 两位十六进制表示拉丁字符

字符串拼接:

var str1 = "hello";var str2 = "world";var str = str1 + str2console.log(str); //helloworld

2.2 数值number

JavaScript 只有一种数字类型。数字可以带小数点,也可以不带

var num1=5.02;     //使用小数点来写var num2=520;      //不使用小数点来写//极大或极小的数字可以通过科学(指数)计数法来书写var y=123e5;      // 12300000var z=123e-5;     // 0.00123

数值范围:

  • 5e324 ~ 1.7976931348623157e+308

  • 如果超过范围,会表示为 Infinity 或者 -Infinity

特殊的数值NaN:

  • NaN是number类型,是一个数值

  • 特点1:NaN与任何数进行任何运算结果都是NaN

  • 特点2:NaN与任何数都不相等,包括自己

相关函数:

  • isNaN() 判断数据是否是NaN, 是返回true,否则返回false

  • isFinite() 判断数据是否在范围内,在范围内返回true,否则false

//NaN是一个特殊的number,与其他所有值都不相等,包括它自身console.log(NaN === NaN ); //false//唯一识别NaN的方法console.log(isNaN(NaN) );  //true// 范围:5e324 ~ 1.7976931348623157e+308var min = 5e324;var max = 1.7976931348623157e+308;var a = 1.7976931348623157e+309; console.log(min); //Infinityconsole.log(max); //1.7976931348623157e+308console.log(a);   //Infinityconsole.log(isFinite(a)); //false(超出范围,不在数值范围内)

2.3 布尔boolean

布尔(逻辑)只能有两个值:true false

var x=true;var y=false;

2.4 null和undefined

null 表示没有对象,此处无值

undefined 表示缺少值,本来应该有值但没定义

var x = null;var y = undefined

2.5 symbol

Symbol 函数可以接受一个字符串作为参数,为新创建的 Symbol 提供描述,用来显示在控制台或者作为字符串的时候使用,便于区分

let name = Symbol();let name2 = Symbol("bb");console.log(name);  // Symbol()console.log(typeof name);  // "symbol"console.log(name,name2); //Symbol() Symbol(bb)console.log( name === name2); // false

2.6 对象object

对象由花括号分隔。在括号内部,对象的属性以键值对的形式 (name : value) 来定义。属性由逗号分隔

//空格和折行无关紧要。声明可横跨多行var obj = {    "name":"张三",    "age":18}

(这里键名也可以不用加引号) 

读取对象中属性:

name = obj.name//或name = obj['name']

三、基本数据类型与引用数据类型区别

3.1 声明变量时不同的内存分配

基本数据类型由于占据的空间大小固定且较小,会被存储在栈当中,也就是变量访问的位置
引用数据类型存储在堆当中,变量访问的其实是一个指针,它指向存储对象的内存地址

3.2 正是因为内存分配不同,在复制变量时结果也不一样

基本数据类型复制后2个变量是独立的,因为是把值拷贝了一份
引用数据类型则是复制了一个指针,2个变量指向的值是该指针所指向的内容,一旦一方修改,另一方也会受到影响????

<script type="text/javascript">    var x = 3;    var y = x;    console.log(x,y); //3 3    // 基本数据类型复制后2个变量是独立的    x = 5; //修改一方,另一个不受影响    console.log(x,y); //5 3             var a = [0,1,2,3];    var b = a;    console.log(a, b); //(4) [0, 1, 2, 3] (4) [0, 1, 2, 3]    a[0] = 9    console.log(a, b); //(4) [9, 1, 2, 3] (4) [9, 1, 2, 3]</script>

结果:

JavaScript的八种数据类型分别是什么

这里明显可以看出b复制了a,改变a数组的值,b数组也跟着改变了。这就是因为当引用数据类型复制的是同一个指针而不是同一个值,指针指向的地址都是相同的,一方修改另一方也会受影响!

(这里涉及了JS的深拷贝和浅拷贝,这里就不再详细赘述,后面会有单独文章进行讲解)

3.3 参数传递不同

基本数据类型把变量里的值传递给参数,之后参数和这个变量互不影响
引用数据类型(这里拿函数举例):虽然函数的参数都是按值传递的,但是引用值传递的值是一个内存地址,实参和形参指向的是同一个对象,所以函数内部对这个参数的修改会体现在外部
数据类型的转换以及检测数据类型的方法会在其他文章单独讲解,为了方便阅读这里就不再详细赘述~

感谢大家的阅读,以上就是“JavaScript的八种数据类型分别是什么”的全部内容了,学会的朋友赶紧操作起来吧。相信编程网小编一定会给大家带来更优质的文章。谢谢大家对编程网网站的支持!

--结束END--

本文标题: JavaScript的八种数据类型分别是什么

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

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

猜你喜欢
  • JavaScript的八种数据类型分别是什么
    小编今天带大家了解JavaScript的八种数据类型分别是什么,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“JavaScript的八...
    99+
    2023-06-26
  • JavaScript的八种数据类型
    目录一、前言二、动态数据类型2.1 字符串string2.2 数值number2.3 布尔boolean2.4 null和undefined2.5 symbol2.6 对象objec...
    99+
    2024-04-02
  • JavaScript中检测数据类型的四种方法分别是什么
    这期内容当中小编将会给大家带来有关JavaScript中检测数据类型的四种方法分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。前言:在介绍检测数据类型的方法之前,先说说JavaScript中数据类...
    99+
    2023-06-26
  • php八大数据类型是什么
    小编给大家分享一下php八大数据类型是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php的框架有哪些php的框架:1、Laravel,Laravel是一款免...
    99+
    2023-06-14
  • 四种C#参数类型分别是什么
    这篇文章将为大家详细讲解有关四种C#参数类型分别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#参数类型有四种:值类型引用类型输出类型数组型参数C#参数类型(1):值参数所谓值参数,...
    99+
    2023-06-17
  • java八大数据类型指的是什么
    本文小编为大家详细介绍“java八大数据类型指的是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“java八大数据类型指的是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。八大数据类型:1、byte(位),...
    99+
    2023-07-05
  • 数据库的三种模型分别是什么
    这篇文章主要介绍了数据库的三种模型分别是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言数据模型是数据库系统的核心,本文简要介绍三种主...
    99+
    2024-04-02
  • ​SQL命令的4种类型分别是什么
    这篇文章给大家分享的是有关SQL命令的4种类型分别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。SQL命令主要分为4种类型,分别为:DDL(数据定义语言)、DML(数据操作...
    99+
    2024-04-02
  • 【java的类型数据】——八大类型数据
    文章目录 前言字面常量字面常量的分类: 数据类型和变量变量的包装类和范围范围整型变量byteintshortlong 浮点型变量双精度浮点型double单精度浮点型float 字符型变量char布尔型变量 boole...
    99+
    2023-08-16
    java 开发语言 类型数据 学习
  • python六种基本数据类型及常用函数分别是什么
    这篇文章主要介绍python六种基本数据类型及常用函数分别是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!number(数字)int(整型), float(浮点型), bool, complex(复数类型) 四种...
    99+
    2023-06-21
  • 八种SQL错误用法分别是什么
    八种SQL错误用法分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、LIMIT 语句分页查询是最常用的场景之一,但也通常也是最容易出...
    99+
    2024-04-02
  • Java中的八种基本数据类型详解
    目录一、八种基本数据类型常识基本常识表详解二、直接量与类型转换2.1、直接量2.2、类型转换1.自动转换:低类型的向高类型的转换 2.强制转换:高类型的向底类型转换,但可能...
    99+
    2024-04-02
  • JS入门必备之八种数据类型
    目录一、开门见山二、动态数据类型(1)字符串string(2)数值number(3)布尔boolean(4)null和undefined(5)symbol (6)对象obj...
    99+
    2024-04-02
  • JavaScript基本数据类型和引用数据类型是什么
    本篇内容主要讲解“JavaScript基本数据类型和引用数据类型是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript基本数据类型和引用数据类...
    99+
    2024-04-02
  • javascript什么数据类型
    Javascript是一种动态类型语言,因此它的数据类型非常灵活。在Javascript中,数据类型可以是基本类型或对象类型,本文将介绍Javascript中各种数据类型。一、基本数据类型字符串(String)字符串是Javascript中...
    99+
    2023-05-20
  • DBMS体系结构的三种类型分别是什么
    这篇文章主要介绍了 DBMS体系结构的三种类型分别是什么,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。DBMS体系结构有三种类型,分别为:单层架...
    99+
    2024-04-02
  • vue路由守卫的三种类型分别是什么
    这篇“vue路由守卫的三种类型分别是什么”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“vue路由守卫的三种类型分别是什么”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来...
    99+
    2023-06-06
  • c#的数据类型分为哪两种,它们有什么区别
    c# 数据类型分为值类型和引用类型。值类型存储实际值,不可变,在栈上分配内存,如 int、float。引用类型存储对值的引用,可变,在堆上分配内存,如 string、array。 C#...
    99+
    2024-04-04
    c#
  • JavaScript的变量与数据类型是什么
    这篇文章给大家介绍JavaScript的变量与数据类型是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。前言:我不是搞前端,而是搞后端的。本命编程语言是java。学习js的嘛,因为看到室友能做出动态网页,而我只能做出...
    99+
    2023-06-22
  • JavaScript的数据类型有哪几种
    本篇内容介绍了“JavaScript的数据类型有哪几种”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本教程...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作