位置: IT常识 - 正文

数据类型(数据类型所占的字节)

编辑:rootadmin
javaScript有哪些数据类型,有什么区别 javascript有八种数据类型:undefined, Null, Boolean, Number, String, Symbol, Biglnt,Object。 symbol和Biglnt是ES6新增的数据类型: symbol代表创建后独一无二且不 ... javaScript有哪些数据类型,有什么区别

推荐整理分享数据类型(数据类型所占的字节),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:数据类型的分类,数据类型的分类,数据类型转换,数据类型怎么设置,数据类型的分类,数据类型的7个基本数据类型,数据类型是什么意思,数据类型是什么意思,内容如对您有帮助,希望把文章链接给更多的朋友!

javascript有八种数据类型:undefined, Null, Boolean, Number, String, Symbol, Biglnt,Object。

symbol和Biglnt是ES6新增的数据类型:

symbol代表创建后独一无二且不可变的数据类型,它主要是为了解决可能出现全局变量冲突的问题。Biglnt是一种数字类型的数据,它可以表示任意精度格式的整数,使用Bigint可以安全地存储和操作大整数,即使这个数已经超出了Number能够表示的安全整数范围。

这些数据类型分为基本数据类型和引用数据类型:

栈:基本数据类型(undefined,Null,Number,String,Boolean)堆:引用数据类型(对象,数组,函数

基本数据类型和引用数据类型的区别在于存储位置不同:

基本数据类型直接存储在栈(stack)中的简单数据段,占据空间小,是被频繁使用的数据。引用数据类型存储在堆(heep)中的对象,占据空间大,如果存储在栈中,会影响浏览器的性能;引用数据类型是在栈中存储了指针,该指针指向堆中的存储的对象浏览器会先检索栈中的地址,通过地址获得堆中的实体

堆和栈存在于数据结构和操作系统内存中

数据结构中:

栈中的数据存取方式为先进后出。堆是一个优先队列,是按照优先级来进行排序的,优先级可以按照大小来规定。

操作系统内:

栈区内存由编译器自动分配释放,存放函数的参数值,局部变量的值等。堆区内存一般由开发者释放,若不释放,结束时可能时由垃圾回收机制(GC)回收。数据类型检测的方式有哪些数据类型(数据类型所占的字节)

(1)typeof

数组,对象,null都会被判断为object

console.log(typeof 2); // numberconsole.log(typeof true); // booleanconsole.log(typeof 'str'); // stringconsole.log(typeof []); // object console.log(typeof function(){}); // functionconsole.log(typeof {}); // objectconsole.log(typeof undefined); // undefinedconsole.log(typeof null); // object

(2)instanceof

  instanceof可以正确判断对象的类型,其内部运行机制时在原型链中能否找到该类型的原型。

console.log(2 instanceof Number); // falseconsole.log(true instanceof Boolean); // false console.log('str' instanceof String); // false console.log([] instanceof Array); // trueconsole.log(function(){} instanceof Function); // trueconsole.log({} instanceof Object); //true

  instanceof只能正确判断引用数据类型,而不能判断基本数据类型。

  instanceof运算符可以用来测试一个对象在其原型链中是否存在一个构造函数的prototype属性。

(3)constructor

console.log((2).constructor === Number); // trueconsole.log((true).constructor === Boolean); // trueconsole.log(('str').constructor === String); // trueconsole.log(([]).constructor === Array); // trueconsole.log((function() {}).constructor === Function); // trueconsole.log(({}).constructor === Object); // true

  constructor有两个作用:一是判断数据的类型,二是对象实例通过constructor对象访问的构造函数,需要注意:如果创建一个对象来改变它们的原型,constructor就不能判断数据类型

function Fn(){};Fn.prototype = new Array();var f = new Fn();console.log(f.constructor===Fn); // falseconsole.log(f.constructor===Array); // true

(4)Object.prototype.toString.call()

   Object.prototype.toString.call() 使用Object对象的原型方法toString来判断数据类型:var a = Object.prototype.toString;

console.log(a.call(2)); //[object Number]console.log(a.call(true));    //[object Boolean]console.log(a.call('str'));    //[object String]console.log(a.call([]));    //[object Array]console.log(a.call(function(){}));    //[object Function]console.log(a.call({}));    //[object Object]console.log(a.call(undefined));  //[object Undefined]console.log(a.call(null));    //[object Null]判断数组的方式通过Object.protottype.toString.call()let obj = [1,2,3]Object.prototype.toString.call(obj).slice(8,-1) === 'Array'通过原型链let obj = [1, 2, 3]console.log(obj.__proto__ === Array.prototype)通过ES6的Array.isArray() fn() function fn() { let obj = [1, 2, 3] console.log(Array.isArray(obj)); }通过instanceof let obj = [1, 2, 3] console.log(obj instanceof Array);通过Array.prototype.isPrototype() let obj = [1, 2, 3] console.log(Array.prototype.isPrototypeOf(obj));null和undefined的区别

undefined和null都是基本数据类型,这两个基本数据类型都只有一个值,就是undefined和null.

undefined代表的是未定义,null代表的是空对象。一般

本文链接地址:https://www.jiuchutong.com/zhishi/311598.html 转载请保留说明!

上一篇:python元组如何打包和解包(python中的元组)

下一篇:python中Sample函数是什么?(python中sample函数怎么用)

  • 鸿蒙怎么把应用变成卡片(鸿蒙怎么把应用移到sd卡)

    鸿蒙怎么把应用变成卡片(鸿蒙怎么把应用移到sd卡)

  • 微信发送不了图片是怎么回事(微信发送不了图片点)

    微信发送不了图片是怎么回事(微信发送不了图片点)

  • 2021微信图片和视频可以保存到本地吗(微信图片vs)

    2021微信图片和视频可以保存到本地吗(微信图片vs)

  • 小米手机的热点在哪里(小米手机的热点电脑搜不到怎么办)

    小米手机的热点在哪里(小米手机的热点电脑搜不到怎么办)

  • 小程序链接怎么朋友圈(小程序链接怎么变成网页链接)

    小程序链接怎么朋友圈(小程序链接怎么变成网页链接)

  • qq空间视频一直转码怎么办(qq空间视频一直显示转码中怎么删除)

    qq空间视频一直转码怎么办(qq空间视频一直显示转码中怎么删除)

  • oppo底部菜单没了(oppo手机底部状态栏为什么没有)

    oppo底部菜单没了(oppo手机底部状态栏为什么没有)

  • 淘宝红包待补充怎么回事(淘宝怎么补红包)

    淘宝红包待补充怎么回事(淘宝怎么补红包)

  • 电脑自动关机(电脑自动关机设置和取消)

    电脑自动关机(电脑自动关机设置和取消)

  • wifi密码被别人改了怎么办(WIFI密码被别人知道了怎么办)

    wifi密码被别人改了怎么办(WIFI密码被别人知道了怎么办)

  • 苹果电脑usb接口在哪(苹果电脑usb接口坏了怎么办)

    苹果电脑usb接口在哪(苹果电脑usb接口坏了怎么办)

  • 申请快手音乐人的条件(申请快手音乐人怎么上传音频)

    申请快手音乐人的条件(申请快手音乐人怎么上传音频)

  • 京东铜牌是什么等级(手机京东铜牌在哪里看)

    京东铜牌是什么等级(手机京东铜牌在哪里看)

  • 微信前往验证是什么意思(微信前往验证是对方加我吗)

    微信前往验证是什么意思(微信前往验证是对方加我吗)

  • 钉钉rc版是什么意思(钉钉hr系统在哪)

    钉钉rc版是什么意思(钉钉hr系统在哪)

  • wifi6向下兼容吗(wifi6向下兼容wifi4吗)

    wifi6向下兼容吗(wifi6向下兼容wifi4吗)

  • 天猫详情页尺寸(天猫详情页尺寸大小)

    天猫详情页尺寸(天猫详情页尺寸大小)

  • 抖音的发现在哪里(抖音的发现在哪里找?)

    抖音的发现在哪里(抖音的发现在哪里找?)

  • 如何把快手币转给别人(如何把快手币转给其他快手账号)

    如何把快手币转给别人(如何把快手币转给其他快手账号)

  • 移动宽带怎么看有没有人蹭网(移动宽带怎么看电视频道)

    移动宽带怎么看有没有人蹭网(移动宽带怎么看电视频道)

  • 摄像头在中间的手机有哪些(摄像头在中间的vivo手机)

    摄像头在中间的手机有哪些(摄像头在中间的vivo手机)

  • 电脑主板自带显卡吗(电脑主板自带显卡一会亮一会黑)

    电脑主板自带显卡吗(电脑主板自带显卡一会亮一会黑)

  • 快手商品备案编号怎么填(快手商品备案编号是什么意思)

    快手商品备案编号怎么填(快手商品备案编号是什么意思)

  • 荣耀v30的NFC区域在哪(v30pro荣耀 nfc)

    荣耀v30的NFC区域在哪(v30pro荣耀 nfc)

  • 输入设备是指(输入设备是指向计算机输入程序)

    输入设备是指(输入设备是指向计算机输入程序)

  • 11pro广角怎么用(苹果11por广角怎么用)

    11pro广角怎么用(苹果11por广角怎么用)

  • ipad怎么看电池寿命(ipad怎么看电池损耗)

    ipad怎么看电池寿命(ipad怎么看电池损耗)

  • 手机来电秀怎么设置(手机来电秀怎么解除)

    手机来电秀怎么设置(手机来电秀怎么解除)

  • mate10超级快充失效(mate10超级快充变成了快速充电)

    mate10超级快充失效(mate10超级快充变成了快速充电)

  • CPU风扇应该怎么安装才正确(cpu风扇应该怎么调)

    CPU风扇应该怎么安装才正确(cpu风扇应该怎么调)

  • 考研408复习思路,学习方法(考研408怎么样)

    考研408复习思路,学习方法(考研408怎么样)

  • 股东退股如何清算表格
  • 金税盘如何查看开票机号
  • 出口退税发票未稽核可以申报退税吗
  • 销售金银首饰消费税怎么算
  • 存货计提减值准备是什么原则
  • 委外研发费用如何开票
  • 车船税没有发票可以税前扣除吗
  • 固定资产转售
  • 设备投入安装计入什么科目
  • 税务顾问费怎么做账务处理?
  • 公司银行利息要交税吗
  • 新办企业需要做什么
  • 固定资产清理的借方
  • 增值税预缴税额可以改吗
  • 什么情况转账会延迟2天
  • 只有土地使用权房子拆了怎么办
  • 买入投资性房地产的会计处理
  • npm sill idealTree buildDeps 安装踩坑指南(详细版)
  • 酒店购啤酒属于什么科目
  • vue 模拟遥控按钮
  • 使用过的固定资产出售,怎么处理
  • 原始凭证的分类依据有哪些?分别能分为哪些类型?
  • 房产税缴纳标准是多少
  • 下岗职工生活费最多发多少个月
  • 小规模纳税人查询
  • 转出未交增值税和未交增值税区别
  • 博德明高沼上布朗威利山麓的废弃小屋,英格兰 (© Helen Hotson/Alamy Stock Photo)
  • 存货非正常损失进项税额转出
  • 使用灭火器人要站在上风口还是下风口
  • 外币存款业务
  • 外贸企业出口退税流程(详细步骤)
  • 存货核算方法可以变更吗
  • 员工多交的个人社保
  • 车保险费中的车险是什么
  • 深究Python中的asyncio库-线程同步
  • 用python创建一个列表
  • 核销坏账递延资产怎么算
  • 事业单位人员收受财物
  • 饭店招牌发光字
  • 人员经费指的是
  • 当月进项税大于销项税怎么办
  • 营改增后简易计税是多少税率
  • 不满足收入确认条件的会计分录
  • 发票必须包含什么内容
  • 会计核算职能有全面性吗
  • 公司租赁个人车辆租金多少合适
  • 关于幼儿园的会议内容
  • 差额征收的有哪些
  • 培训学校收费依据填什么
  • 当月财务费用怎么算
  • 政府专项扶持资金
  • 普通发票找不到了可以重开吗
  • 餐费补贴属于工资还是福利费
  • 个体工商户如何注销网上
  • sqlserver存储过程在哪里
  • u盘启动盘如何克隆另外u盘
  • ubuntu怎么安装包
  • 电脑windowxp系统重装
  • windows储存池写入缓存
  • win8如何关闭开始屏幕
  • win10mobile下载官网
  • win10系统怎么调整字体大小
  • macbookpro屏幕显示
  • win7系统电脑硬盘图标变了,控制面板也打不开
  • win10怎么显示磁盘已用空间
  • win8系统电脑
  • win10 20h2 微软账户
  • Linux系统中下载文件的wget命令操作实例
  • cocos2dx菜鸟教程
  • 一个简单的灵魂福楼拜
  • html怎么下
  • nodejs示例
  • wifi基本功能
  • vlw框架论坛
  • python 爬取
  • jquery插件免费下载
  • 物业收电费有什么猫腻
  • 土地出让金入账后就摊销吗
  • 税控盘如何下载驱动程序及安全控件
  • 浙江省打造先行省
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设