博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Prototype1.5.1源代码解读分析-5
阅读量:5889 次
发布时间:2019-06-19

本文共 1501 字,大约阅读时间需要 5 分钟。

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>
Abstract源代码

var Abstract = new Object();

代码解析及其使用方法

Abstract(抽象类)是个空类,没有任何成员。

Object.extend源代码

Object.extend = function(destination, source) {

  for (var property in source) {

    destination[property] = source[property];

  }

  return destination;

}

Object.extend(Object, {

  inspect: function(object) {

    try {

      if (object === undefined) return 'undefined';

      if (object === null) return 'null';

      return object.inspect ? object.inspect() : object.toString();

    } catch (e) {

      if (e instanceof RangeError) return '...';

      throw e;

    }

  },

  toJSON: function(object) {

    var type = typeof object;

    switch(type) {

      case 'undefined':

      case 'function':

      case 'unknown': return;

      case 'boolean': return object.toString();

    }

    if (object === null) return 'null';

    if (object.toJSON) return object.toJSON();

    if (object.ownerDocument === document) return;

    var results = [];

    for (var property in object) {

      var value = Object.toJSON(object[property]);

      if (value !== undefined)

        results.push(property.toJSON() + ': ' + value);

    }

    return '{' + results.join(', ') + '}';

  },

  keys: function(object) {

    var keys = [];

    for (var property in object)

      keys.push(property);

    return keys;

  },

  values: function(object) {

    var values = [];

    for (var property in object)

      values.push(object[property]);

    return values;

  },

  clone: function(object) {

    return Object.extend({}, object);

  }

});

本文转自 netcorner 博客园博客,原文链接:http://www.cnblogs.com/netcorner/archive/2007/08/16/2912303.html  ,如需转载请自行联系原作者

你可能感兴趣的文章
Linux 进程中 Stop, Park, Freeze【转】
查看>>
文件缓存
查看>>
PHP盛宴——经常使用函数集锦
查看>>
重写 Ext.form.field 扩展功能
查看>>
Linux下的搜索查找命令的详解(locate)
查看>>
MySQL查询优化
查看>>
android app启动过程(转)
查看>>
安装gulp及相关插件
查看>>
如何在Linux用chmod来修改所有子目录中的文件属性?
查看>>
高并发环境下,Redisson实现redis分布式锁
查看>>
Hyper-V 2016 系列教程30 机房温度远程监控方案
查看>>
笔记:认识.NET平台
查看>>
cocos2d中CCAnimation的使用(cocos2d 1.0以上版本)
查看>>
【吉光片羽】短信验证
查看>>
gitlab 完整部署实例
查看>>
GNS关于IPS&ASA&PIX&Junos的配置
查看>>
影响企业信息化成败的几点因素
查看>>
SCCM 2016 配置管理系列(Part8)
查看>>
struts中的xwork源码下载地址
查看>>
ABP理论学习之仓储
查看>>