UNPKG

xmlplus

Version:

A JavaScript framwork for developing projects efficiently.

79 lines (61 loc) 3.5 kB
# 概述 本文档提供全面的与框架相关的接口索引及描述,如 [文档](/docs) 中已有详细介绍的,则仅作简要说明,并给出相应的链接。按照所属对象划分,接口可分为三类,包括全局对象接口、集合对象接口以及个体对象接口。其中全局对象接口也叫全局接口,此类接口由全局对象 `xp` 或者 `xmlplus` 引用,其引用方式如下: ```js xp.api_name([parameters]) ``` 或者 ```js xmlplus.api_name([parameters]) ``` 集合对象接口也叫集体对象接口,此类接口由集合对象引用。个体对象接口则由个体对象引用,下面是两类接口使用的一个示例。 ```js // 00-01 Example: { xml: "<div id='example'>\ <button>foo</button>\ <button>bar</button>\ </div>", fun: function (sys, items, opts) { sys.example.text(); // text 是个体对象接口 sys.example.kids().hash(); // hash 是集体对象接口 } } ``` 对于每一个函数接口,本文档以如下示例的格式编写,该示例是系统函数 [each](/api#全局-each) 的详细描述。 <hr/> <b style="font-size:30px;">each</b> ```js each(object,callback) ``` - `object` : `Array | Object` 要迭代的数组或对象 - `callback` : `Function` 在每个对象上执行的函数 - `Returns` : `Array | Object` 第一个实参 一个通用的迭代器函数,可以用来无缝地迭代数组和对象。其中,对于具有 length 属性的数组和数组类对象(例如函数的 arguments 对象),则通过数字索引(从 0 到长度 length - 1)进行迭代。而其他对象则通过它们的命名属性进行迭代。 ```js // 01-15 xp.each(['a','b','c'], function (index, value) { console.log(index, value); }); xp.each({a:1,b:2,c:3}, function (key, value) { console.log(key, value); }); ``` <hr/> 对于上面的接口描述示例,刚开始是函数名,函数名加粗显示。其次是函数声明,函数声明由函数名以及参数列表构成。参数列表由零个或多个逗号分隔,可选的参数则包含于中括号。然后是参数列表中每一个参数的详细描述。描述的内容包含参数类型和参数的简单解释。参数类型可以是下面给出的任何一个。如果允许多个类型,则需要用竖线 `|` 分隔开来。 - `String`:字符串 - `Number`:数值 - `Boolean`:布尔型 - `RegExp`:正则表达式 - `Object`:即 Javascript 中的 Object - `Integer`:整型数 - `Proxy`: 代理对象 - `PlainObject`:由 `{}` 或者 `new Object` 创建 - `Collection`:指代集合对象 - `HTMLElement`:指代 HTML 元素 - `XMLElement`:指代由全局函数 parseXML 解析后返回的数据类型 - `Event`:指代事件侦听器的形参类型 - `Message`:指代消息侦听器的形参类型 - `ValueObject`:指代值对象类型 - `SystemObject`:指代系统对象类型 - `AnyType`:指代任意的类型 如果函数有返回值,那么还会有一个返回值描述,该描述由 `Returns` 开始,其后是返回值的类型和解释。之后就到了函数的用法描述,该描述包含了文字和相关的示例源码。另外,请注意示例开头的一个注释 `01-15`。你可以根据该注释定位到目录 `/example/api/01-global/15/`,注释中的 `01` 即章节序,`15` 就是示例所在目录的名称。