zoukankan      html  css  js  c++  java
  • JavaScript类属性

      对象的类属性(class attribute)是一个字符串,用以表示对象的类型信息。ECMAScript3和ECMAScript5都未提供设置这个属性的方法,并只有一个间接的方法可以查询它。默认的toString()方法(继承自Object.prototype)返回了如下格式的字符串:

      [object class]

      如:

      "[object Null]","[object Undefined]","[object String]","[object Number]","[object Array]","[object RegExp]","[object Boolean]"

      因此,要想获得对象的类,可以调用对象的toString()方法,然后提取已返回字符中的第8个到倒数第二个位置之间的字符。不过让人感觉棘手的是,很多对象继承的toString()方法重写了,为了能调用正确的toString()版本,必须间接地调用Function.call()方法。下面的classof()函数可以返回传递给它的任意对象的类:

    1 function classof(o){
    2     if(o==null) return "Null";
    3     if(o==undefined) return "Undefined";
    4     return Object.prototype.toString.call(o).slice(applicationCache,-1);
    5 }

      如:  

      classof(null)  //"Null"

      classof(1)  //"Number"

      classof("")     //"String"

      来源于《JavaScript权威指南 6.8.2》

  • 相关阅读:
    java 异常练习题1
    java 异常练习题
    java 抽象类
    java 接口练习题6
    java 接口练习题5
    java 接口练习题4
    java 接口练习题3
    java接口练习题2
    java 接口练习题1
    java 泛型
  • 原文地址:https://www.cnblogs.com/-------perfect/p/4598258.html
Copyright © 2011-2022 走看看