js判断数据类型包含基本数据类型和引用数据类型

function typeOf(obj) {
  // console.log(Object.prototype.toString.call(obj).slice(8, -1).toLowerCase());
  return Object.prototype.toString.call(obj).slice(8, -1).toLowerCase();
}

typeOf(1);  //  number
typeOf("字符串"); //  string
typeOf(undefined); //  undefined
typeOf(null); //  null
typeOf({ a: 2435, b: [2] }); //  object
typeOf(true); //  boolean
typeOf(function() {  //  function
  console.log("fun");
});
typeOf(new Date());  // date


在这里插入图片描述

补充说明一下slice方法:
众所周知,slice是操作字符串/数组的一个方法,包含两个参数(start,end)
用来提取start到end(不包含)的部分。返回一个新的字符串/数组。注:不会改变原来的字符串/数组。
但是当end传的是负数的时候,则是从尾部开始算起,到字符串/数组的倒数第Math.abs(end)个,但不包括倒数第Math.abs(end)的值。比如:

let msg = "hello world";
let str = msg.slice(1, -1); //截取msg从index=1,到msg的最后一个字符串,但不包括最后一个字符串
console.log(msg); //hello world
console.log(str); // ello worl

//数组也是一样的
let arr = [11, 22, 33, 44, 55, 66];
let newArr = arr.slice(2, -2); //从数组中截取下标为2开始,到数组的倒数第二个(但不包括他),返回新数组;
console.log(arr);
console.log(newArr);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值