写一个判断数据类型的方法(js)

来源博客:【Harryの心阁

第九天

  • 题目来源: 前端每日知识3+1

Javascript题目

题目 : 写一个判断数据类型的方法(js)

问题解答

解题思路

  • 写一个判断数据类型的方法

Object.prototype.toString方法

function type(obj) {
  // return Object.prototype.toString.call(obj).replace(/\[object\s|\]/g, ''); // apply方法或者 call方法都可以将改变this的指向
  // return Object.prototype.toString.call(obj).split(' ')[1].replace(']',''); // split方法
  // return Object.prototype.toString.call(obj).slice(8,-1); // slice方法
  // return Object.prototype.toString.call(obj).substr(8).split(']')[0]; // substr方法
  // return Object.prototype.toString.call(obj).substring(8).replace(']',''); // substring方法
  return Object.prototype.toString.call(obj).match(/(?<=\[object\s)(\w*)(?=\])/g)[0]; // substring方法
}
console.log(type('')) //"String"
console.log(type(1)) //"Number"
console.log(type([])) //"Array"
console.log(type(false)) //"Boolean"
console.log(type(NaN)) //"Number"
console.log(type(undefined)) //"Undefined"
console.log(type(null)) //"Null"
console.log(type(function fn() {})) //"Function"
console.log(type(/d/g)) // "RegExp"
console.log(type(Symbol())); //Symbol
console.log(type(Math)); //Math
console.log(type(window)); // Window
console.log(type(Promise)); // Promise

instanceof方法

知识扩展

  • typeofinstanceof方法的解释详解
  • 基本数据类型: String, Boolean, Number, Null, Undefined, Symbol【数据类型
  • 引用数据类型: Object 里面包含的 function、Array、Date、RegExp
  • typeof: 检测数据类型的运算符 用于检测基本数据类型
  • instanceof: 检测某个实例是否属于这个类, 用于检测引用数据类型
  • constructor 获取当前实例的构造器
  • Object.prototype.toString.call: 获取当前实例的所属类信息

公众号:今日在学

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Harry-iu

顺手给小编加个鸡腿????

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值