javascript里面的数据类型有哪些

JavaScript014

javascript里面的数据类型有哪些,第1张

我们先来认识下JavaScript中的数据类型。JavaScript是弱类型语言,开始的时候并不知道变量时什么类型,必须通过存储的具体的值才能判断变量的类型。

JavaScript的数据类型分为基本数据类型和复杂数据类型。其中,基本数据类型: Number(数字),String(字符串),Boolean(布尔),Undefined(未定义),Null(空)复杂(引用)数据类型: Object(对象), Array(数组), Function(函数)。我们可以使用typeof操作符检查变量的类型,语法为typeof(变量)/typeof 变量,typeof返回值: number, string, boolean, undefined, object, function。今天我们来认识下JavaScript中的基本数据类型。

首先,我们来认识下Number类型。number类型就是数字类型,主要用于存储数据,参与数学运算。number类型包括 整数,小数,正数,负数,各种进制的数字和特殊数字。我们通过下面的代码来认识下number类型:

// 1.1 普通整数和小数

var num1 = 10

var num2 = 2.5 console.log(typeof(num1), typeof num2)

// 1.2 负值

var num3 = -0.2

console.log(num3, typeof num3)

// 1.3 八进制,以 0 开头并且没有超过 8 的值,则为 8 进制

var num4 = 070

console.log(num4, typeof num4) // 56 number

// 1.4 十六进制,0x 开头,则为 16 进制

var num5 = 0x10

console.log(num5, typeof num5) //15 number

除了上面的number类型,JavaScript中还有一些特殊的数字类型:

1、NaN: not a number,算术运算不能得到正常数字时会返回NaN,NaN不和NaN相等。

2、Infinity: 无穷大。

3、e: 10的次幂 1e9代表1乘以10的9次幂

4、小数相加会有误差

//1.1 NaN not a number 算术运算不能得到正常数字都会返回 NaN var num5 = ‘a’ - 5

console.log(num5, typeof num5) // NaN number

// 1.2 无穷大

var num6 = 1 / 0

console.log(num6, typeof num6) // Infinity number

// 1.3 小数相加 会有一点偏差

console.log(0.1+0.2) // 0.30000000000000004

接下来,我们来认识下String类型,string类型就是字符串类型,是用引号引起来的内容,单引号和双引号都可以, 例如:“web”, ‘web’。字符串有一个常用属性length,用来表示字符串的长度,字符串中的任意字符都占字符串的一个长度,字符串也可以通过charAt(下标)方法来获取对应下标的字符,需要注意的是,字符串中下标是从0开始的,除了charAt()方法外,也可以使用字符串加中括号的形式获取对应下标的字符。

var str1 = ‘abc’

var str2 = “123”

console.log(typeof str1,typeof str2) //string string

console.log(str1.charAt(0)) // a

console.log(str1[0]]) // a

此外,所有我们从 input 表单中获取的用户输入的内容都是字符串,哪怕输入的是数字。例如下面的例子。

<input type="text" id="oIn">

<button id="oBut">输出内容</button>

oBut.onclick = function () {

var value = oIn.value

console.log(typeof value) // string

}

接下来,我们来认识下Boolean类型。Boolean: 布尔类型, 只有真和假,也就是true/false。

var bool1 = true

var bool2 = false

console.log(typeof bool1, typeof bool2) // boolean boolean

console.log(10 > 20) //false

if(10   >   20){ // if 的小括号里面,会自动转换成 boolean 类型

alert(true)

}

除了通过比较能得到 Boolean 的值以外,还有一个口诀来判断条件是否为真:非 0 为真,非空为真”。即 0 为假,其他数字为真,空字符串为假,其他为真。

最后,我们来认识下null和undefined。null表示值为空,undefined表示变量没有初始化(声明未赋值),值的空缺。null表示空对象,使用typeof操作符得到的“object”。undefined:undefined类型,当声明变量未赋值时,变量的值就是undefined,类型也是undefined。

var a = null

console.log(a) // null

console.log(typeof a) // object

// var b = undefined

var b

console.log(b) // undefined

console.log(typeof b) // undefined

在JS的学习与工作中,搞清楚相关数据类型是基础中的基础,平均一百家公司面试前端工程师的时候九十九家都会问,请你简单举例一下JS的数据类型,于是菜狗我就将对此进行一些自己粗浅的总结为自己留作笔记同时为各位想要学习的同学提供小小的帮助。

首先,我们要明白,在JS中,数据类型分为一下两种:

基础数据类型分为七种

①Number 数字型 (包含所有的整数,浮点数,负数等)

②String 字符串型 (包含任意文本)

③boolean 布尔型 (仅有两种类型,ture与false)

④Undefined 未定义 (仅有一种,undefined)

⑤Null 空/不存在 (仅有一种,null)

⑥Symbol (实现唯一标识)

对此进行简单的举例

⑦BigInt(任意精度整数)(将与ES10中出现)

对此数据类型存在进行简单解释

BigInt 通过数字加n的方法来表示,支持二进制,八进制,十六进制

以下写法结果均为转换为字符串后得而结果,BigInt类型转换字符串后不会再带着n

Ⅰ.通常写法

Ⅱ .十六进制

Ⅲ.八进制(注意区分数字0与字母o)

Ⅳ. 二进制

引用数据类型共有三种

①Array类型 (数组型)

②Object类型 (对象型)

③Function类型 (函数/方法)

以上就是十种JS中的数据类型,如有错误,欢迎指正。

如果本文能帮到你,那么菜狗很开心,大家一起 加油!