对象的class属性如何理解,与typeof有何区别?

来源:5-1 [JavaScript]创建数组、数组操作

luke_zhou

2015-03-24 15:38

这一页ppt有点混淆了:

var toString = Object.prototype.toString;

function getType(o){return toString.call(o).slice(8,-1);};


toString.call(null); // "[object Null]"

getType(null); // "Null"

getType(undefined); // "Undefined"

getType(1); // "Number"

getType(new Number(1)); // "Number"

typeof new Number(1); // "object"

getType(true); // "Boolean"

getType(new Boolean(true)); // "Boolean"


写回答 关注

2回答

  • Bosn
    2015-03-26 11:49:34

    typeof主要用于判断基本类型和函数。

    对象的"Class标签“是一个内部的,对JavaScript代码这个层级里不可见的。

    你可以理解为代码背后机制的一个东东。

    共 1 条回复 >

  • uhelper_net
    2015-03-24 16:57:23

    Object.prototype.toString这是一个hack写法,typeof只能简单的检测对象,如array,自定义的对象用typeof都是返回object.但是Object.prototype.toString可以返回具体的信息.

    qq_慕慕9... 回复luke_z...

    这个不是插件 你直接在浏览器中 按F12就可以了

    2019-10-29 15:23:09

    共 2 条回复 >

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281101 学习 · 1020 问题

查看课程

相似问题