zoukankan      html  css  js  c++  java
  • Object.prototype.toString & typeof

    Object.prototype.toString & typeof 

    Object.prototype.toString 获取某个对象属于哪种内置类型

    typeof  得到某个对象的类型

    差别:

    举个样例:

    var arr = new Array();
    typeof(arr); //object
    Object.prototype.toString.call(arr); //[Object Array]

     

    推断某个对象值属于哪种内置类型

    Object.prototype.toString

     

    ECMAScript 3

    1.获取this对象的[[Class]]属性的值

    2.拼接字符串:[object  + 1步得到的值 ]

    3.返回第2步的操作结果

     

    [[Class]]是一个内部属性,全部的对象(原生对象和宿主对象)都拥有该属性

    一个字符串值,表明了该对象的类型

     

    ECMAScript 5

    1.假设this的值为undefined。则返回 [object Undefined]

    2.假设this的值为null,则返回 [object Null]

    3.获得[[Class]]属性的值

    4.拼接字符串[object  + 3步得到的值 ]

    5.返回第4步的操作结果

     

    [[Class]]的值:"Arguments", "Array", "Boolean", "Date", "Error", "Function", "JSON", "Math", "Number", "Object", "RegExp", "String"

     

    ECMAScript 6

    6中比較复杂,当然也是严谨的表现,临时6还没有盛行的浏览器,这是尚在研究

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    计算属性computed和watch侦听器
    .gitignore不起作用
    flex 布局
    vue-awesome-swiper
    Chrome截长屏
    JS 数组 foreach 和 map
    for-in 和 for
    边框画的三角形给shadow
    element-UI 表单图片判空验证问题
    Vue 表格内容根据后台返回状态位填充文字
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4631073.html
Copyright © 2011-2022 走看看