首页 技术教程 实用代码 注册破解 正则表达式 网址导航 电子书籍

Prototype实战教程:Object -> clone

clone Object.clone(obj) -> Object 使用浅拷贝克隆传入的对象(复制所有原始的属性到结果中)。 请注意是浅拷贝,不是深拷贝。 样例 var o = { name: 'Prototype', version: 1.5, authors: ['sam', 'contributors'] }; var o2 = Object.clone(o); o2.version = '1.5 weird'; o2.authors.pop(); o.version // -> 1.5 o2.version // -> '1.5 weird' o.authors // -> ['sam'] // 噢!浅拷贝! ...
类别:网页编程 - JavaScript    查看:76    更新:2014-05-23

Prototype实战教程:Object

在 Prototype 中,Object 可以看作是一个命名空间,也就是说,它把许多新的方法聚集在一起, 然后需要通过一个名称前缀(如以“Object.”开头)才能够访问。 作为普通的开发人员(指简单的使用 Prototype 而不需要对其进行扩展的开发人员),本章中最常用的方法可能是 inspect,其次是 clone。 而作为高级的开发人员,他们希望像 Prototype 一样创建自己的类,或者是把对象当作 hash 以解析对象的结构。 对于这些人来说,他们常用的方法可能是 extend、keys 和 values。 方法 clone Object.clone(obj) -> Object 使用浅拷贝克隆传入的对象(复制所有原始的属性到结果中)。 extend Object.extend...
类别:网页编程 - JavaScript    查看:80    更新:2014-05-23

Prototype实战教程:ObjectRange -> include

include include(value) -> Boolean 判断排列中是否包含指定的值。 这个方法的默认实现假定排列中的值具有严格有效的弱序化规则(即操作符 < 在任意两个值之间都有明确的语义)。尽管 ObjectRange 混入了 Enumerable,但是这里仍然重写了 Enumerable 中默认的 include 方法,以使它具有更好的性能 (它简单的比较 value 是否在 ObjectRange 的上下限值之内)。 译注:正如上面的描述,这个方法只是简单的比较 value 是否在 ObjectRange 的上下限值之内。所以,如果要在自定义对象上实现自己的排列,很多时候都必须重写 include 方法,另外, 在对 ObjectRange 进行遍历时,也是调用 include 方法确定当前的值是否仍在...
类别:网页编程 - JavaScript    查看:75    更新:2014-05-23

Prototype实战教程:Hash -> toObject

toObject     [1.6] toObject() -> Object 克隆 hash 內部的 Object 并返回。译注:Hash 在内部使用一个单独的 Object 保存“键/值”对。 样例 var h = new Hash({ a: 'apple', b: 'banana', c: 'coconut' }); var obj = h.toObject(); Object.inspect(h); // -> #<Hash:{'a': 'kiwi', 'b': 'banana', 'c': 'coconut'}> Object.inspect(obj); // -> [object Object] obj.a = 'orange'; h.get('a'); // -> 'apple' ...
类别:网页编程 - JavaScript    查看:99    更新:2014-05-23

Prototype实战教程:ObjectRange

排列(Range)描述了遵循某种规则变化的一系列的值。值必须是可推导的,更确切地说,需要实现一个 succ 方法让我们能够从一个值步进到下一个值(它的 后继者)。 译注:对于这里的 Range,大多数翻译为“范围”,但我觉得它的表现更类似于数学中的“数列”, 因为这里明显不限于数值,故译为“排列”。 Prototype 为 Number 和 String 提供了相应的 succ 方法。对于自定义对象, 如果要启用排列,你必须实现符合相应语义的 succ 方法。 ObjectRange 混入了 Enumerable,从而使得排列具有多方面的用途。 然而,需要注意的是,为获得更好的性能,通常需要重写 include 方法。 虽然 ObjectRange 提供...
类别:网页编程 - JavaScript    查看:71    更新:2014-05-22

Javascript之GetObject函数

  GetObject 函数   从文件中返回对 Automation 对象 的一个引用。   GetObject([pathname] [, class])   参数   pathname   可选项。 完整的文件路径和名称,文件中包含了要检索的对象。 如果忽略了 pathname ,那么需要 class 。   class   可选项。 对象的类。   类参数采用的语法是 appname.objectype ,包括了以下部分:   appname   必选项。 提供对象的应用程序名称。   objectype   必选项。 要创建的对象的类的类型。   说明   使用 GetObject 函数可以从文件中访问一个 Automation 对象。 可以将由 GetObject 返回的对象赋值给对象变量。 例如: ...
类别:网页编程 - JavaScript    查看:126    更新:2014-05-22

MFC:CObject类

 CObject类  CObject是大多数MFC类的根类或基类。CObject类有很多有用的特性:对运行时类信息的支持,对动态创建的支持,对串行化的支持,对象诊断输出,等等。MFC从CObject派生出许多类,具备其中的一个或者多个特性。程序员也可以从CObject类派生出自己的类,利用CObject类的这些特性。本章将讨论MFC如何设计CObject类的这些特性。首先,考察CObject类的定义,分析其结构和方法(成员变量和成员函数)对CObject特性的支持。然后,讨论CObject特性及其实现机制。 CObject的结构  以下是CObject类的定义:class CObject{public: //与动态创建相关的函数virtual CRuntimeClass* G...
类别:程序开发 - C/C++    查看:133    更新:2014-05-19

interface和Object的关系

先看一个关于接口的测试代码: interface Test { public void test(); @Override public int hashCode(); @Override public String toString(); } class TestInterface implements Test { public void test() { } } public class Main { public static void main(String[] args) { Object obj = new Object(); Test test = new TestInterface(); System.out.println(test.toString()); System.out.println(test.hashCode()); System.out.println(test.equals(test)); } } 我故意保留了NetBeans IDE帮我生成的 @Override标记.这个地方看起来有些怪,按ide的提示,好像接口定义中的hashCode()方法和toString()方法重写了...
类别:程序开发 - JAVA    查看:98    更新:2014-05-14

PB通过OLEObject使用Word

1 引言在编程的时候,常常需要访问Word文档。除了使用DDE之外,PowerBuilder还有一种操作Word的方式,就是通过OLEObjcet和OLEControl。OLEObject是不可视的OLE对象,而OLEControl则是可视的窗口控件。由于OLEObject较后者更灵活方便,如果不是必须在窗口上显示Word文档内容,使用前者是更好的选择。程序开发员在使用OLE连接Word文档的时候,常常遇到这样两个问题:第一:如果某文档已经打开,再使用程序调用的时候,会产生程序运行错误;第二:经常发现创建的WinWord.exe进程没有能够正常终止。2 分析下面我们来分析这两个错误产生的原因。对于第一个错误,往往是由于使用OLEObjectVar.ConnectToOb...
类别:程序开发 - PowerBuilder    查看:129    更新:2014-05-12