Util 工具函数
在 hnsdk 内部使用的各种工具函数。
Function
| 方法名 | 返回值 | 说明 |
|---|---|---|
extend( dest, src?) | Object | 将 src 对象(或多个对象)的属性合并到 dest 对象中并返回后者。有一个 hnsdk.extend 的快捷方式。 |
create( proto, properties?) | Object | 对 Object.create 的兼容性 polyfill |
bind( fn, …) | Function | 返回一个与传递的参数绑定的新函数,就像 Function.prototype.bind. 。有一个 hnsdk.bind() 的快捷方式 |
stamp( obj) | Number | 返回一个对象的唯一 ID,如果它没有 ID 就给它分配一个。 |
throttle( fn, time, context) | Function | 返回一个函数,该函数以给定的范围 上下文 执行函数 fn (因此, this 关键字指的是 fn 代码中的 context )。 在给定的时间内,函数 fn 将被调用不超过一 次 。 被绑定的函数收到的参数将是绑定函数时传递的任何参数,然后是调用绑定函数时传递的任何参数。有一个 hnsdk.throttle 的快捷方式。 |
wrapNum( num, range, includeMax?) | Number | 返回数字 num modulo range 的方式,使其位于 range[0] 和 range[1] 内。除非 includeMax 被设置为 true ,否则返回的值将总是小于range[1] 。 |
falseFn() | Function | 返回一个总是返回 false 的函数。 |
formatNum( num, precision?) | Number | 返回四舍五入到小数点后的 数字num ,或者默认为6位小数。 |
trim( str) | String | String.prototype.trim的兼容性 polyfill |
splitWords( str) | String[] | 在空白处对字符串进行修剪和分割,并返回各部分的数组。 |
setOptions( obj, options) | Object | 将给定的属性合并到 obj 对象的 选项 中, 返回生成的选项。 参见 Class 选项 。有一个 hnsdk.setOptions 快捷方式。 |
getParamString( obj, existingUrl?, uppercase?) | String | 将一个对象转换为一个参数URL字符串,例如, {a: "foo", b: "bar"} 翻译为 '?a=foo&b=bar' 。如果设置了 existingUrl ,参数将被附加在最后。如果 大写字母 为 true, 参数名称将被大写字母化 (例如 '?A=foo&B=bar') |
template( str, data) | String | 简单的模板化工具,接受 'Hello {a}, {b}' 形式的模板字符串和 {a: 'foo', b: 'bar'}这样的数据对象,返回已评估的字符串 ('Hello foo, bar')。你也可以为数据值指定函数而不是字符串——它们将通过 data 作为参数被评估。 |
isArray(obj) | Boolean | Array.isArray的兼容性 polyfill |
indexOf( array, el) | Number | Array.prototype.indexOf 的兼容性 polyfill |
requestAnimFrame( fn, context?, immediate?) | Number | 当浏览器重绘时,安排 fn 被执行。如果给定的话, fn 被绑定到 context 。如果设置了 immediate ,如果浏览器没有对 window.requestAnimationFrame 的本地支持,fn 会被立即调用,否则会被延迟。返回一个请求ID,可以用来取消请求。 |
cancelAnimFrame( id) | undefined | 取消之前的 requestAnimFrame。可以参考 window.cancelAnimationFrame。 |
