数据类型介绍

本文详细介绍了JavaScript中的各种数据类型,包括数值型、字符串型、布尔型、未定义类型、空类型、函数类型、对象数据类型以及ES6新增的大整型和唯一类型(Symbol)。同时讨论了typeof操作符用于数据类型的检测。
摘要由CSDN通过智能技术生成

js数据类型

数值型(Number)

var a = 1  // 正整型
var a1 = -1  // 负整型
var a2 = 1.2  // 浮点型
var a3 = 02   // 以零开头的是 八进制数 , es6之后禁用了
var a4 = 0x1  //  以0x开头的是十六进制数
var a5 = 1.3e2 // 科学计数法 , ==== 1.3*10**2   10的二次方

数值类型在运算时都是以二进制进行运算的,浮点型也是一样 ,所以运算结果不准确

字符串型(String)

var b = "a"
var b1 = 'a'
var b2 = `a`  // 模版字符串

字符串中不允许使用相同的引号

var  b3 = "abc'd'efg"

布尔型(Boolean)

var a = true 
var b  = false

未定义类型(Undefined)

var c = undefined  // 直接赋值为undefined,会将之前的所有的值覆盖
var c1  // 没有赋值,系统默认赋予undefined

空类型(Null)

// 解决内存泄漏, 处理引用对象的引用关系
var e = null  // 这个值得类型是object类型

函数类型(function)

function fn(){
    语句块
}

函数在js中有一个特性:预解析预赋值,不同于变量的预解析,函数在声明命名空间后,还会直接将定义的具体函数执行赋值改命名空间

var d = undefined
function d(){
console.log("我是一个函数")
}
console.log(d)  // undefined  在js代码执行前,var变量和函数都会预解析声明变量空间,d变量空间先被创建,函数还有预赋值,开始时的d ,就是函数d ,起值也就是函数本身,在代码开始执行后,按顺序执行,执行至 d = undefined  时 将函数值替换为undefined,因为函数预解析预赋值,不在重复执行,直接到打印d , 输出undefined

对象数据类型(Object)

var obj = {a: 1 , b:2}

es6新增: 大整形(Bigint) ,唯一类型(Symbol)

大整型 :数字n + 数字n 数字超限时在数据末尾加n ,这就是大整型

  • 数字的长度是受限制的,当数据超出一定范围后,将不再显示具体的运算结果,大整型就是来解决这个问题的
 var a = 10000000000000000
 var b = 1
 console.log(a+b) // 10000000,反正最多显示到17位还可以预算,到十八位往后统一显示1E18 

var a = 100000000000000000n
var b = 1n
console.log(a+b)  // 1000000000000000001n  多少个零不重要,重要的是此时俩变量不管多少位,都会进行运算,只是后面多个n

唯一类型:Symbol 去除魔术字符串

const WALK = Symbol("walk") , RUN = Symbol("walk") 
console.log(WALk == RUN)  // false 唯一类型,即使定义的值相同,代表的常量也不相同

一般用途:

const WALK = Symbol() ,RUN = Symbol() , JUMP = Sybmol()
var state = RUN
if(sate === WALK){
	console.log("走")
}else if(state === RUN ){
	console.log("跑")
}else if(state == JUMP){
	console.log("跳")
}

即使都是空,三个常量也是不相同的,这样在判断的时候只要判断常量即可,避免以后修改判断条件时要改动过多的地方

typeof 数据类型检测

var a = 1
console.log(typeof a) // number 

这样在判断的时候只要判断常量即可,避免以后修改判断条件时要改动过多的地方**

typeof 数据类型检测

var a = 1
console.log(typeof a) // number 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值