精华内容
下载资源
问答
  • number,string,boolean,null,undefined,object 转载于:https://www.cnblogs.com/luckyXcc/p/5744241.html

    number,string,boolean,null,undefined,object

    转载于:https://www.cnblogs.com/luckyXcc/p/5744241.html

    展开全文
  • Javascript到底有几种数据类型

    千次阅读 2018-08-06 09:29:09
    Javascript的 六种数据类型 ECMAScript的5种简单数据类型(基本数据类型) Undefined Null Boolean Number String 一种复杂数据类型 Object PHP 八大数据类型 Boolean 布尔类型 Int...

    Javascript的 六种数据类型
    ECMAScript的5种简单数据类型(基本数据类型)

    Undefined Null Boolean Number String

    一种复杂数据类型
    Object

    这里写图片描述

    PHP 八大数据类型

    Boolean 布尔类型
    Integer 整型
    Float 浮点型
    String 字符串
    Array 数组
    Object 对象
    Resource 资源类型
    NULL

    展开全文
  • JavaScript有几种数据类型? 看过一些文章,关于JavaScript的数据类型分为几种,不同的说法。先从大体上看,说基本数据类型和引用数据类型的;说原始数据类型和对象数据类型的等等。 在这里结合MDN文档和一些...


    看过一些文章,关于JavaScript的数据类型分为几种,有不同的说法。先从大体上看,有说基本数据类型和引用数据类型的;有说原始数据类型和对象数据类型的等等。

    在这里结合MDN文档和一些网上的文章整理一下。

    先上结论:八种,分别是:string、number、boolean、undefined、null、symbol(ES6)、bigint(ES10)和object

    一、JS中的堆栈与数据类型

    1.从JavaScript中的堆栈谈起

    首先我们需要知道:

    • JavaScript是一门解释型语言
    • JavaScript代码需要在机器(node或者浏览器)上安装一个工具(JS引擎)才能执行。

    然而JS引擎(例如chrome v8等)多数是一种由 C++ 开发的“应用”,JavaScript中并没有严格意义上区分栈内存与堆内存,具体怎么做取决与不同引擎的实现方式。

    我们需要参考一些编译型语言来看JS的堆栈。

    • 栈(stack): 栈会自动分配内存空间,会自动释放,存放基本类型。
    • 堆(heap): 动态分配的内存,大小不定也不会自动释放,存放引用类型, 栈(stack)内存中存放地址指向堆(heap)内存中的对象.

    当查询引用类型的变量时, 先从栈中读取内存地址, 然后再通过地址找到堆中的值。
    在这里插入图片描述
    在这里插入图片描述

    2.从堆栈看数据类型

    综上,我们将JS中的数据类型大体上分为两种:基本数据类型和引用数据类型。

    目前为之JS有八种数据类型,分别是:

    • string、number、boolean、undefined、null、symbol(ES6)、bigint(ES10)
    • object

    这样,我们从JS的堆栈开始,进一步了解了JavaScript的数据类型,有助于之后理解传值和传址,深浅拷贝等等。

    注:function函数其实也是一个对象,是在堆内存当中。对象又是通过 new 构造函数出来的······这部分可以去学习原型与原型链,有助于进一步理解。

    二、不可改变的基本数据类型

    MDN中写到

    基本类型(基本数值、基本数据类型)是一种既非对象也无方法的数据。在 JavaScript 中,共有7种基本类型:string,numbe,boolean,null,undefined,bigint,symbol。

    多数情况下,基本类型直接代表了最底层的语言实现。

    所有基本类型的值都是不可改变的。

    基本类型值可以被替换,但不能被改变,赋值行为可以给基本类型一个新值,而不是改变它。

    在函数中JavaScript会将传递进来的参数(基本类型的值)复制一份,创建一个本地副本,函数中的任何操作都不会影响到最初的值,我们操作的只不过是它的副本

    那么调用字符串的方法,不会影响之前的字符串;调用数组的方法,部分会影响之前的数组。

    三、JS中的基本类型、包装对象、原型

    除了 nullundefined之外,所有基本类型都有其对应的包装对象:

    • String 为字符串基本类型。
    • Number为数值基本类型。
    • BigInt 为大整数基本类型。
    • Boolean为布尔基本类型。
    • Symbol 为字面量基本类型。

    在包装对象的原型上有基本类型的方法,例如String.prototype中有split、substring等等方法。

    而我们的基本类型的 __proto__ 属性又会指向对应包装对象的原型,那么我们可以把基本类型看作是实例,与原型与原型链的知识结合起来了。

    这样基本数据类型就可以调用这些方法时,可以通过原型链找到。

    const str = "abc";
    const num = 123;
    str.__proto__ === String.prototype // true
    num.__proto__ === Number.prototype // true
    

    四、typeof 操作符能返回哪些结果?

    typeof 操作符返回一个字符串,表示未经计算的操作数的类型。

    类型 结果
    Undefined "undefined"
    Null "object"
    Boolean "boolean"
    Number "number"
    BigInt "bigint"
    String "string"
    Symbol "symbol"
    Function "function"
    其他任何对象 "object"

    特殊的几点:

    • typeof Object:结果是"function",因为Object是一个构造函数,可以通过new操作符来构造对象。

    • typeof null:结果是"object",null是一个只有一个值的特殊类型。表示一个空对象引用。

      为什么 typeof null 为 “object”? JavaScript 诞生以来便如此

      在 JavaScript 最初的实现中,JavaScript 中的值是由一个表示类型的标签和实际数据值表示的。对象的类型标签是 0。由于 null 代表的是空指针(大多数平台下值为 0x00),因此,null 的类型标签是 0,typeof null 也因此返回 "object"

      曾有一个 ECMAScript 的修复提案(通过选择性加入的方式),但被拒绝了该提案会导致 typeof null === 'null'

    综上,typeof操作符能返回的类型:

    • string number boolean undefined symbol bigint
    • object 、(typeof null === ‘object’)
    • function

    五、== 和 === 相关总结

    ==运算符,会发生隐式类型转换

    // 以下结果都是true
    100 == '100'
    0 == ''
    0 == false
    1 == true
    false == ''
    null == undefined
    

    通常我们在所有地方都使用===,在判断null或者undefined时使用==

    const obj = { foo: "foo" }
    if (obj.a == null) {}
    // 相当于
    if (obj.a === null || obj.a === undefined) {}
    

    在==、if、逻辑判断中都类似,自行网上了解一下隐式类型转换规则。

    JS隐式类型转换详解

    网上看了一下什么面试题大坑,特别奇葩的js隐形转换的面试题,感觉很离谱又没什么意思。

    展开全文
  • JS有六大数据类型: Number、String、Boolean、Null、Undefined、Object ​ 这些数据类型可以通过 typeof关键字 进行检测 typeof 123 //number typeof 'abc' //string typeof true //boolean typeof ...

    JS有六大数据类型:

    Number、String、Boolean、Null、Undefined、Object

    这些数据类型可以通过 typeof关键字 进行检测

    typeof 123			//number
    
    typeof 'abc'		//string
    
    typeof true			//boolean
    
    typeof undefined	//undefined
    
    typeof null			//object
    
    typeof { }			//object
    
    typeof [ ]			//object
    
    typeof function(){}	//function
    

    null类型进行typeof操作符后,结果是object,原因在于,null类型被当做一个空对象引用。

    JS的这些数据类型又分为两大类:

    一种存在堆中,叫做引用数据类型,做等号赋值操作进行的是址传递

    一种存在栈中,叫做基本数据类型,做等号赋值操作进行的是值传递

    存在堆中:引用数据类型(object、function)

    存在栈中:基本数据类型(number、string、boolean、null、unedfined)

    数组Array被归为object类型,用typeof 检测不出来,需要用到 instanceof

    var arr = [];
    console.log(arr instanceof Array);        //true 
    
    展开全文
  • 1.JS中有6基本的数据类型JS中的所有操作都是基于这五基本类型得到的。 (1)Object 对象类型 (2)number 数字类型 (3)String 字符串类型 (4)null (5)underfined (6)boolean 布尔类型:true...
  • JS判断数据类型几种方式

    千次阅读 2019-05-09 12:21:41
    JS中常见的几种数据类型 基本类型:string、boolean、number 特殊类型:undefined和null 3、引用类型:Array、Date、RegExp… typeof typeof检测基本数据类型时没有问题,但是当其对引用类型进行检测时,会返回...
  • JavaScript中有基本数据类型

    千次阅读 2018-06-13 15:55:51
    JavaScript中有基本数据类型(也叫做简单数据类型)分别为:undefined、null、bolean、number、string;另外还含有一复杂的数据类型:object.
  • 类型总结 今天我们就来盘盘 JavaScript 到底有几种数据类型? 首先在 js 数据类型分为原始数据类型与引用数据类型 原始数据类型 number string boolean null undefined symbol (ES6) bigint (ES10) 引用数据类型 ...
  • Js几种数据类型的介绍

    千次阅读 2018-08-29 11:27:36
    说明:根据容器能够存储哪些数据,进行了分类,分为如下类: (1)字符串类型 JavaScript的字符串类型数据,通过引号定义的(单引号、双引号),而且单引号、双引号没有区别 <script type="...
  • JS/jQuery判断数据类型几种方式

    千次阅读 2019-07-02 10:08:06
    JavaScript提供判断数据类型的一些方法: 方法一:typeof; 方法二:tostring.call(); 方法三:Instanceof 和 constructor; 方法四:hasOwnProperty; 代码例子如下: <script> var str = 'aaaa'; ...
  • js中的5种数据类型进行值复制

    千次阅读 2017-12-27 10:07:33
    时候会遇到这样的题目,要求对js中的5种数据类型进行值复制,那下面来进行一下实现吧    js中的5种数据类型进行值复制  function clone( obj ) {  var copy;  switch( typeof obj ) { ...
  • JS的数据结构及判断方法,数组的几种判断方法,:typeof,instance用法,js9种数据类型,6种原始类型 undefined、Symbol、Boolean、BigInt、String、Number null、Object、Function
  • JavaScript数据类型几种判断方法

    千次阅读 2019-06-14 16:00:58
    JS数据类型的判断主要三种方法:...返回一个表示数据类型的字符串,返回结果包括:number、boolean、string、symbol、object、undefined、function等7种数据类型,但不能判断null、array等 typeof Symbol(); /...
  • 简单介绍Python几种数据类型

    万次阅读 2017-11-20 15:30:59
    大体上把Python数据类型分为如下类: Number(数字) 包括int,long,float,complex String(字符串) 例如:hello,"hello",hello List(列表) 例如:[1,2,3],[1,2,3,[1,2,3],4] Dictionary...
  • JS几种数据类型转换(最全)

    万次阅读 多人点赞 2018-10-31 16:57:15
    :Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN console.log(Number(true)); 2、 parseInt(): var a="12.3px"; console.log(parseInt(a); //结果:12.3. 如果...
  • JS数据类型之基本数据类型

    万次阅读 多人点赞 2019-06-28 16:46:43
    1.JavaScript(以下简称js)的数据类型分为两:原始类型(即基本数据类型)和对象类型(即引用数据类型); 2.js常用的基本数据类型包括undefined、null、number、boolean、string; 3.js的引用数据类型也就是...
  • JS中种数据类型(一)——Undefined

    千次阅读 2017-04-09 16:22:24
    JS中有6种数据类型:Undefined、Null、Boolean、Number、String和Object。JS中不支持任何创建自定义类型的机制,而所有值最终都将是这6种数据类型。其数据类型的动态性特点足以表示所有数据。JS提供typeof操作符来...
  • 这个很基础的问题,被问到的人可能会想干嘛拿这么简单的弱智问题问我,这怎么会问倒我,不就是那几种么,但是深入下去我们经常会犯一些错误,下面会详细介绍js数据类型及常见的特殊情况,还有如何判断数据类型数据...
  • js中有这俩种数据类型,一种为基本数据类型 ,另一种引用数据类型 基本数据类型分别为: Number(数值型),String(字符串类型),Boolean(布尔类型),Underfind(未定义),Null(空) 引用数据类型分别为Object(对象),...
  •     JS中有6种数据类型:Undefined、Null、Boolean、Number、String和Object。JS中不支持任何创建自定义类型的机制,而所有值最终都将是这6种数据类型。其数据类型的动态性特点足以表示所有数据。JS提供typeof...
  • 数值类型中有如下个特殊值 Infinity 无穷大 -Infinity 负无穷大 NaN 非数字,非数字非常特殊,和任何值都不行等,包括本身,即NaN==NaN的值为false。可以通过isNaN()判断某值 是否为NaN。 数值类型是基本数据类型...
  • 判断数据类型的方法以下几种: 1.typeof: 返回的是string类型  判断基本数据类型:string、number、boolean、function、undefined类型  举例: console.log(typeof('str')); //string console.log(typeof(123))...
  • js中都哪些对象 先使用Object.prototype.toString.call()判断 上面是js中18对象,我目前就想到这些,如果你知道哪些是我这没有的希望能评论告知
  • JS中种数据类型(四)——Number

    万次阅读 2016-04-21 22:16:53
    Number类型应该是ECMAScript最令人关注的数据类型了,这种类型使用IEEE754格式来表示整数和浮点数值(浮点数值在某些语言也被称为双精度数值)。为支持各种数值类型,ECMA-262定义了不同的数值字面量。  最基本...
  • JS基础篇1:数据类型(8

    万次阅读 多人点赞 2019-07-08 19:27:23
    我怎么记得JS数据类型有8。最近发现好多人对JS的基础不太了解。很多数据类型都没有搞清楚。不BB,我就按我的理解写一波笔记,每次看一波书我就感觉一次比一次多懂一点。来补下知识点。。。。 JS数据类型:基础...
  • ECMAScript中有5简单数据类型(也成为基本数据类型): Undefined,Null,Boolean,Number,String 还有一复杂数据类型: Object typeof 操作符 由于js中的变量是松散类型的,所以它提供了一检测当前变量的...
  • 详解javascript的【6种数据类型

    千次阅读 2016-09-22 00:23:03
    数据类型 (6)基本数据类型(5) Undefined类型 Null类型 Boolean类型 Number类型 String类型 复杂数据类型(1) Object类型 注:Object类型由键值对组成。如 var aa = {key1:value1,key2:value2} 这里...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 236,404
精华内容 94,561
关键字:

js中有几种数据类型