工具函数 $R - Prototype JavaScript 框架

Xunxin Prototype API

$R

$R(start, end[, exclusive = false]) -> ObjectRange

创建一个新的 ObjectRange 对象。这个函数是对 ObjectRange 构造函数的简单封装,但是应优先使用 $R 简称。

ObjectRange 的实例描述了一系列遵循某种规则变化的值,如数字、 文本或其它在语义上支持相邻值推导的类型。更详细的说明以及如何使自定义的类型支持 ObjectRange,请查阅相关文档

$R 函数和原始的构造函数具有完全相同的参数:start 和 end 分别表示下限值和上限值(两个参数的类型必须一致),exclusive 表示是否排除上限值(参数 end)。默认不排除上限值。

样例

$R(0, 10).include(10) 
// -> true 
$A($R(0, 5)).join(', ') 
// -> '0, 1, 2, 3, 4, 5' 
$A($R('aa', 'ah')).join(', ') 
// -> 'aa, ab, ac, ad, ae, af, ag, ah' 
$R(0, 10, true).include(10) 
// -> false 
$R(0, 10, true).each(function(value){ 
	// 调用 10 次,value 的值从 0 到 9 
}); 

注意:ObjectRange 混入(mix in)了 Enumerable 模块:从而使得该对象转换为 Array 极其容易(Enumerable 提供了 toArray 方法,可供 $A 直接调用以进行转换),并且也极大的方便了值的迭代遍历。(注意:无论如何,通过 startend 属性获取下限或上限值,远比调用 Enumerablemin()max() 方法有效。)