返回列表 发新帖

JavaScript 基本数据类型及其判断

[复制链接]

6

主题

53

回帖

198

积分

小学生

Rank: 2

金币
110
好评
0
信誉
100

MT论坛新人

发表于 2023-4-21 21:36:47 来自手机  | 显示全部楼层 | 阅读模式  来自 广东
JavaScript一共有7中数据类型:

null, undefined, string, number, boolean, object, symbol(ES6)

前面5种为基本类型

object又包括 array,function,date等

1.使用typeof判断数据类型
typeof 5;//number
typeof '5';//string
typeof undefined;//undefined
typeof true;//boolean
typeof null;//object
typeof Symbol('er');//Symbol
typeof {};//object
2.使用instanceof判断数据类型
a instanceof B 判断的是 a是否是B的实例

2.1数组的判断
[1,2,3] instanceof Array;//true
2.2 对象的判断
function Person(name){
    this.name = name;
}
const p = new Person('lucy');
p instanceof Person;//true
2.3 数字的判断
5 instanceof Number;//false
5是基本类型,它并不是Number构造函数构造出来的实例对象,稍加修改,使其变为判断以下关系,则返回true。

new Number(5) instanceof Number;//true
3.使用Object.prototype.toString判断数据类型
console.log(Object.prototype.toString.call(1));//[object Number]

console.log(Object.prototype.toString.call('lucy'));//[object String]

console.log(Object.prototype.toString.call(true));//[object Boolean]

console.log(Object.prototype.toString.call({}));//[object Object]

console.log(Object.prototype.toString.call([]));//[object Array]

console.log(Object.prototype.toString.call(()=>{}));//[object Function]

console.log(Object.prototype.toString.call(null));//[object Null]

console.log(Object.prototype.toString.call(Symbol('345')));//[object Symbol]
4.使用constructor查看目标的构造函数,也可以进行数据类型判断
var foo = 5;
foo.constructor
//ƒ Number() { [native code] }

var foo = 'lucy';
foo.constructor
//ƒ String() { [native code] }

var foo = true;
foo.constructor
//ƒ Boolean() { [native code] }

var foo = [];
foo.constructor
//ƒ Array() { [native code] }

var foo = {};
foo.constructor
//ƒ Object() { [native code] }

var foo = ()=>{
   
};
foo.constructor
//ƒ Function() { [native code] }

var foo =Symbol('345')
foo.constructor
//ƒ Symbol() { [native code] }
回复

使用道具 举报

13

主题

5044

回帖

1万

积分

博士生

E●机甲FK

Rank: 7Rank: 7Rank: 7

金币
3850
好评
22
信誉
100

MT论坛最佳新人MT论坛帅哥MT论坛新人考神MT论坛活跃会员挂机大佬

QQ
发表于 2023-4-21 21:39:09 来自手机  | 显示全部楼层  来自 安徽
感谢大佬分享
回复

使用道具 举报

60

主题

2933

回帖

9019

积分

硕士生

啥也不会,啥也不懂

Rank: 6Rank: 6

金币
2936
好评
40
信誉
101

MT论坛帅哥MT论坛新人考神MT论坛最佳新人MT论坛活跃会员

QQ
发表于 2023-4-21 21:47:15 来自手机  | 显示全部楼层  来自 天津
感谢大佬分享
回复

使用道具 举报

30

主题

6064

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
6239
好评
12
信誉
98
发表于 2023-4-21 21:59:20 来自手机  | 显示全部楼层  来自 安徽
感谢分享
回复

使用道具 举报

41

主题

525

回帖

1886

积分

高中生

Rank: 4

金币
699
好评
0
信誉
100
发表于 2023-4-21 22:01:27 来自手机  | 显示全部楼层  来自 广东
感谢大佬分享!
回复

使用道具 举报

8

主题

3840

回帖

8798

积分

硕士生

Rank: 6Rank: 6

金币
2937
好评
6
信誉
96
发表于 2023-6-5 16:04:48 来自手机  | 显示全部楼层  来自 广西
谢谢分享
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表