高级前端进阶:01讲,JS数据类型说明、内存理解以及常见的面试考点

JS的数据类型

基本数据类型

string、boolean、number、null、undefined、Symbol

引用类型

Object、Array、RegExp、Date、Function

区别

引用类型值可添加属性和方法,而基本类型值则不可以。

内存存储

基本类型
基本类型的变量是存放在栈内存(Stack)里的
基本数据类型的值是按值访问的
基本类型的值是不可变的
基本类型的比较是它们的值的比较
引用类型
引用类型的值是保存在堆内存(Heap)中的对象(Object)
引用类型的值是按引用访问的
引用类型的值是可变的
引用类型的比较是引用的比较

面试点

typeof 检测数据类型

	// string、boolean、number、undefined、Object、function、Symbol
	//可以先考虑下以下的变量会打印出什么结果
	var a1 = "hello";
	var a2 =  true;
	var a3 =11;
	var a4 = undefined;
	var a5 = null;
	var a6 = [1,2,3]
	var a7 = function(){};	
	var a8 = Symbol('aa');
	var a9 = {} 或者new Object();
	
	console.log(typeof a1);//string
	console.log(typeof a2);//boolean
	console.log(typeof a3);//number
	console.log(typeof a4);//undefined
	console.log(typeof a5);//object
	console.log(typeof a6);//object
	console.log(typeof a7);//function
	console.log(typeof a8);//symbol		
	console.log(typeof a9);//object

从以上结果可以得出typeof 只能区别出

string、boolean、number、undefined、function、symbol

不能区别

null、Array、Object

那么用什么来区分啦?
instanceof 可以上场了
instanceof 可以判断Array、Object和Function
上代码

var s1 = [1,2,3];
var s2 = {};
var s3 = function(){};
console.log(s1 instanceof   Array);// true
console.log(s2 instanceof   Object);//true
console.log(s3 instanceof   Function);//true

下面说说 null 和 undefined 的区别吧

undefined  代表没赋值
null  赋值了给了null

//一般面试笔试必有的一道题
console.log(null==undefined );// true
console.log(null===undefined );//false

第一讲结束,不知道学到并理解多少,需要多写多悟,记在脑子里。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值