JS中有哪些数据类型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中有哪些数据类型?相关的知识,希望对你有一定的参考价值。

js中有5种数据类型:Undefined、Null、Boolean、Number和String。
还有一种复杂的数据类型Object,Object本质是一组无序的名值对组成的。
Undefined类型只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的,例子:
var
i;
alert(i == undefined);//true
var i;与var i =
undefined;这两句是等价的。
包含Undefined值的变量和未定义的变量是不一样的。
Null类型也只有一个值:null.null表示一个空对象的指针。
Boolean类型:只有两个字面量true和false。但是js中多有的变量都可以使用Boolean()函数转换成一个Boolean类型的值。
Number类型:整数和浮点数。NaN:Not
a Number。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0
返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。
针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。
String类型:略
typeof操作符:对一个变量进行推断变量的类型,可能返回以下字符串:
"undefined"
如果这个值,未定义或者为初始化
"boolean" 布尔值
"string" 字符串
"number" 数值
"object"
对象
"function" 函数
用法:typeof 95; 或者 typeof(95); 会返回"number".
参考技术A js中有5种数据类型:Undefined、Null、Boolean、Number和String。
还有一种复杂的数据类型Object,Object本质是一组无序的名值对组成的。
Undefined类型只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的,例子:
var
i;
alert(i == undefined);//true
var i;与var i =
undefined;这两句是等价的。
包含Undefined值的变量和未定义的变量是不一样的。
Null类型也只有一个值:null.null表示一个空对象的指针。
Boolean类型:只有两个字面量true和false。但是js中多有的变量都可以使用Boolean()函数转换成一个Boolean类型的值。
Number类型:整数和浮点数。NaN:Not
a Number。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0
返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。
针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。
String类型:略
typeof操作符:对一个变量进行推断变量的类型,可能返回以下字符串:
"undefined"
如果这个值,未定义或者为初始化
"boolean" 布尔值
"string" 字符串
"number" 数值
"object"
对象
"function" 函数
用法:typeof 95; 或者 typeof(95); 会返回"number".
参考技术B js中有5种数据类型:Undefined、Null、Boolean、Number和String。
还有一种复杂的数据类型Object,Object本质是一组无序的名值对组成的。
Undefined类型只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的,例子:
var
i;
alert(i == undefined);//true
var i;与var i =
undefined;这两句是等价的。
包含Undefined值的变量和未定义的变量是不一样的。
Null类型也只有一个值:null.null表示一个空对象的指针。
Boolean类型:只有两个字面量true和false。但是js中多有的变量都可以使用Boolean()函数转换成一个Boolean类型的值。
Number类型:整数和浮点数。NaN:Not
a Number。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0
返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。
针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。
String类型:略
typeof操作符:对一个变量进行推断变量的类型,可能返回以下字符串:
"undefined"
如果这个值,未定义或者为初始化
"boolean" 布尔值
"string" 字符串
"number" 数值
"object"
对象
"function" 函数
用法:typeof 95; 或者 typeof(95); 会返回"number".
参考技术C


1.  !!'a'//true这是什么意思?

       答:转Boolean类型,通过两个取反,强制转化成Boolean类型


2. ~~3.14159//3 

    ~~'5.678'//5 

    -2.33 | 0 //-2 

    2.33 >> 0 //2 这是什么意思?

    答: 将字符串转换成数字类型。向下取整。原理是~是一个叫做按位非的操作,会返回数值的反码,两次取反就是原数。|为位运算符,两个位只要有一个为1,那么结果都为1,否则就为0。>>运算符执行有符号右移位运算。都是二进制操作。 原因在于javascript中的number都是double类型的,在位操作的时候要转化成int。


3.用 || 和 &&来简化if-else

答: let a = b || 1;//b为真,a=b;b为假,a=1; 

let c = b && 1;//b为真,c=1;b为假,c=b; 

// 使用!!符号 

let isValid = !!(value && value !== 'error');

“!”是取反操作,就是负..负负得正..比较常用的是||。


4.在IE5.5~8中怎么给underfined赋值???

答:在IE5.5-8中underfined不是保留字但是IE9+之后无效用void获取更精准

let data = void 0; // undefined

 

5.标准JSON的深拷贝.

let a =  

 a1: 1, 

 b1: c: 1, d: 2  

let b=JSON.parse(JSON.stringify(a)); 

b;//a1: 1, b1: …

不考虑IE的情况下,标准JSON格式的对象很实用,不过对于undefined和function的会忽略掉。

参考技术D 基本类型 数值类型,字符串,布尔类型
引用类型 函数,数组,对象

以上是关于JS中有哪些数据类型?的主要内容,如果未能解决你的问题,请参考以下文章

js的基本数据类型有哪些?

js的基本数据类型有哪些?

js数据类型有几种

js常用的数据类型都有哪些

【JS】常用的判断所有数据类型的方法

js的数据类型有哪几种