JavaScript部分--数据类型

问题**:**JavaScript 有几种数据类型,分别是什么?*

*基本数据类型:*

string 字符串类型

number 数字类型

boolean 布尔值类型

null 空值

undefined 未定义

Symbol 类型,用于创建一个独一无二的值 ( ES6 )

任意精度的整数 (BigInt) ,可以存储很大的整数 (ES10)var biglnt = new Biglnt('很大的数值')

*引用数据类型:*

object 对象类型 (function array Date )

*问题**:**判断数据类型的方式有那些*

  1. *Typeof**,**判断基本数据类型*

对于基本类型,除 null 以外,均可以返回正确的结果。

对于引用类型,除 function 以外,一律返回 object 类型。对于 null ,返回 object 类型。

对于 function 返回 function 类型。

  1. *instanceOf**,**判断引用数据类型*

参数object InstanceOf 构造函数,

构造函数的protype是否存在于参数object的原型链上

如果在,返回true

  1. Constructor

每一个实例对象都可通过constructor来访问它的构造函数,也是根据原型链的原理来的

'5'.proto.constructor === String // true

[5].proto.constructor === Array // true

  1. *Object.prototype.toString.call**,**准确判断数据类型*

Object.prototype.toString方法返回对象的类型字符串,因此可用来判断一个值的类型。

*问题**:**null 和undefined 有什么区别?*

null表示"没有对象",即该处不应该有值。典型用法是:

(1) 作为函数的参数,表示该函数的参数不是对象。

(2) 作为对象原型链的终点。

Object.getPrototypeOf(Object.prototype)

// null

//比如:"123"--->String--->Object--->null

undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:

(1)变量被声明了,但没有赋值时,就等于undefined。 例如,

(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。

(3)对象没有赋值的属性,该属性的值为undefined。

(4)函数没有返回值时或者return后面什么也没有,返回undefined。

var i;

i // undefined

function f(x){console.log(x)}

f() // undefined

var o = new Object();

o.p // undefined

var x = f();

x // undefined

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值