Prototype 学习——Object对象

来源:互联网 发布:丰臣秀吉 知乎 编辑:程序博客网 时间:2024/05/16 08:38

Object is used by Prototype as a namespace; that is, it just keeps a few new methods together, which are intended for namespaced access (i.e. starting with “Object.”).

上面说的namespace个人理解就相当于C#中的静态类,提供工具函数的意思,和C#中的namespace应该不是一个概念。因为C#中的命名空间后面不会直接跟方法,肯定是接一个对象然后在调用方法,不过和C++中的命名空间倒是有些类似

 

  • clone
  • extend
  • inspect
  • isArray
  • isElement
  • isFunction
  • isHash
  • isNumber
  • isString
  • isUndefined
  • keys
  • toHTML
  • toJSON
  • toQueryString
  • values
  •  

     

    inspect方法:

    toJSON方法:

    注意这里面有一个递归调用的过程var value = toJSON(object[property]);最后返回一个JSON格式的字符串表示,下面看一下示例:

    toQueryString方法:

    用object创建一个Hash对象,然后调用Hash对象的toQueryString方法,并返回调用结果,讲到Hash对象时在详细说toQueryString方法。

    一般这个方法在调用Ajax.Request时会经常用到,下面看一下示例:

    toHTML方法:

    如果传进去的object参数为undefined或者null将返回空字符串

    alert(Object.toHTML())

    alert(Object.toHTML(null))

    如果object定义了toHTML方法,则调用object的toHTML方法,否者调用String的静态方法interpret,其实就是判断一下object是否为null,为null则返回'',否则调用object的toString方法,并返回调用结果

     

    下面看一下示例:

     

    keys和values方法:

    看一下示例就明白了,就不多说了:

     

    clone方法:

    '{}'就是空对象的直接量,相当于new Object()

    isXXX方法不说了吧。

     

    原创粉丝点击