读书人

kissy seed lang 中is开端的方法解析

发布时间: 2012-09-08 10:48:07 作者: rapoo

kissy seed lang 中is开头的方法解析

首先介绍两个kissy的方法,待会会用到,但是大家知道用法就行,暂时不需要深度了解, 以后会介绍到。

mix

?

Object KISSY.mix (receiver , supplier [ , overwrite = true , whitelist , deep ])将 supplier 对象的成员复制到 receiver 对象上.Parameters:receiver (object)  属性接受者对象.supplier (object)  属性来源对象.overwrite (boolean)  是否覆盖接受者同名属性.whitelist (Array<string>)  属性来源对象的属性白名单, 仅在名单中的属性进行复制.Returns:receiver 属性接受者对象.Return type:object

?

?each

?

Object KISSY.each ( o, fn[, context] )遍历数组中的每一项, 执行指定方法.Parameters:o (Array|object)  需要遍历的数组或对象fn (function) 执行时, 接收 3 个参数:当 o 为数组时, 参数为当前数组单项值, 当前 index, 数组 o当 o 为对象时, 参数为当前值 (value), 当前键 (key), 对象 ocontext (object)  fn 的上下文对象, 不指定为全局 window

?

isBoolean?isNumber?isString?isFunction?isArray?isDate?isRegExp?isObject 判断方法的解析

?

<!DOCTYPE HTML><html><head><meta charset="GBK" /><title>demo</title></head><body><script src="http://a.tbcdn.cn/s/kissy/1.2.0/kissy-min.js"></script><script>KISSY.ready(function(S){var OP = Object.prototype,        toString = OP.toString,class2type = {};S.each('Boolean Number String Function Array Date RegExp Object'.split(' '),function(name, lc) {// populate the class2type mapclass2type['[object ' + name + ']'] = (lc = name.toLowerCase());// add isBoolean/isNumber/...S['is' + name] = function(o) {return S.type(o) == lc;}});S.mix(S, {type: function(o) {return nullOrUndefined(o) ?String(o) :class2type[toString.call(o)] || 'object';},isNull: function(o) {return o === null;},isUndefined: function(o) {return o === undefined;}});function nullOrUndefined(o) {        return S.isNull(o) || S.isUndefined(o);    }});</script></body></html>

?

上述方法代码就是从kissy源码中解析出来的is开头的判断方法的由来

读书人网 >Web前端

热点推荐