js基本数据类型有哪些:区分与校验实操

js基本数据类型有七种,分别是string、number、boolean、undefined、null、symbol、bigint,你在前端变量定义、接口传参、类型判断场景都可以直接使用,typeof运算符是最常用的初步校验手段,但typeofnull会错误返回object,这个边界问题只在类型判断代码编写时需要额外处理,单纯声明赋值变量不受该问题影响。

js基本数据类型基础说明

string也就是字符串,用来存放文本内容,内容包裹在单引号、双引号或者反引号内,反引号支持模板字符串写法,能够直接嵌入变量,适合拼接动态文案。number代表数字类型,既包含整数,也包含小数,同时还有特殊值NaN、Infinity,NaN用来表示无效数字运算结果,Infinity代表超出计算范围的数值。

boolean只有两个固定取值true和false,多用于条件判断分支,if、三元运算符都会接收布尔值来决定代码走向,其他类型的值在条件里会自动转为隐式布尔值,空字符串、0、null、undefined、NaN会转为false,其余大多转为true。

undefined代表变量已经声明,但没有赋予初始值,函数没有写return语句时,默认返回undefined,你不要手动给变量赋值undefined,优先保留它作为未赋值状态的标识。null表示空值,代表变量有意置空,它是一个独立的基本类型,不是对象。

symbol用来生成唯一、不可重复的值,常用来作为对象属性名,避免属性名冲突,即使两个symbol传入相同描述文本,二者本身也不相等。bigint用于处理超出number安全整数范围的大数,数字末尾添加字母n就可以声明bigint,它不能和number直接混合运算。

基本类型的值在赋值、传参时是值拷贝,修改副本不会影响原始数据,这和引用类型的地址拷贝有明显区别,引用类型包含对象、数组、函数,不属于基本数据类型,不要混淆归类。

js基本数据类型校验方式对比

校验方式优势局限
typeof写法简短,日常高频使用判断null返回object,无法精准识别null
Object.prototype.toString.call()识别精度更高,覆盖全部七种代码更长,需要固定调用格式

精准判断null需要单独写等值判断===null,这个写法不会产生误判,配合typeof一起使用就能搭建一套完整的类型判断逻辑。

你写通用类型工具函数的时候,优先选用Object.prototype.toString.call(),它可以稳定输出形如[objectString]的结果,截取后面的类型名称,适配表单校验、接口参数过滤这类严谨场景。

大数运算场景优先选用bigint,number能够安全表示的整数区间是-2^53+1到2^53-1,超出区间后number会丢失精度。

敬慕百科汇集百科知识与游戏文化,带你发现世界的每一个精彩角落。

想要了解更多关于js基本数据类型有哪些的文章欢迎访问:百科