Prototype Number對象 學(xué)習(xí)
Object.extend(Number.prototype, (function() {
//返回十六進(jìn)制顏色之
function toColorPart() {
return this.toPaddedString(2, 16);
}
//返回連續(xù)的下一個(gè)數(shù)值
function succ() {
return this + 1;
}
//連續(xù)執(zhí)行某個(gè)操作
function times(iterator, context) {
$R(0, this, true).each(iterator, context);
return this;
}
//返回固定長度的字符串,前面補(bǔ)0
function toPaddedString(length, radix) {
var string = this.toString(radix || 10);
return '0'.times(length - string.length) + string;
}
function toJSON() {
return isFinite(this) ? this.toString() : 'null';
}
function abs() {
return Math.abs(this);
}
function round() {
return Math.round(this);
}
function ceil() {
return Math.ceil(this);
}
function floor() {
return Math.floor(this);
}
return {
toColorPart: toColorPart,
succ: succ,
times: times,
toPaddedString: toPaddedString,
toJSON: toJSON,
abs: abs,
round: round,
ceil: ceil,
floor: floor
};
})());
這里簡單介紹幾個(gè)prototype擴(kuò)展的方法。
times方法:
看一下示例
var s = '';
(5).times(function(n) { s += n; });
alert(s);
// -> '01234'
//函數(shù)原型:times(iterator) -> Number,基本就是連續(xù)執(zhí)行N次iterator方法,并且傳給iterator的第一個(gè)參數(shù)為0~N-1
/*
這里注意一下調(diào)用方法時(shí)的寫法:5要加上括號,否則直接寫5.times,語法會有錯(cuò)誤。因?yàn)?后面的點(diǎn)會被當(dāng)成小數(shù)點(diǎn)解析,而小數(shù)點(diǎn)后面跟字符串會有語法錯(cuò)誤。
還可以有令一種寫法:5['times'](function(n) { s += n; });
其實(shí)這里的5和Number的關(guān)系就相當(dāng)于C#里面int和Integer個(gè)關(guān)系差不多
*/
toJSON方法:
這個(gè)方法里面的isFinite(number)是JavaScript提供的全局方法:
假如 number 不是 NaN 、負(fù)無窮或正無窮,那么 isFinite 方法將返回 true 。 假如是這三種情況,函數(shù)返回 false 。
剩下方法就不多解釋了,太簡單了,給幾個(gè)示例看看就完了:
(5).succ()
// -> 6
$A($R(1, 5)).join('')
// -> '12345'
(128).toColorPart()
// -> '80'
(10).toColorPart()
// -> '0a'
(13).toPaddedString(4); // -> '0013'
(13).toPaddedString(2); // -> '13'
(13).toPaddedString(1); // -> '13'
(13).toPaddedString(4, 16) // -> '000d'
(13).toPaddedString(4, 2); // -> '1101'
相關(guān)文章
Prototype源碼淺析 String部分(一)之有關(guān)indexOf優(yōu)化
Prototype源碼淺析 String部分(一)之有關(guān)indexOf優(yōu)化介紹,需要的朋友可以參考下。2012-01-01Prototype 工具函數(shù) 學(xué)習(xí)
Prototype學(xué)習(xí)工具函數(shù)$H,$R,Try.these,document.getElementsByClassName2009-07-07Prototype Template對象 學(xué)習(xí)
這里的Template對象其實(shí)就是格式化字符串的工具,就像java中的String.format方法。這個(gè)對象只提供一個(gè)方法evaluate。2009-07-07Prototype 學(xué)習(xí) 工具函數(shù)學(xué)習(xí)($A方法)
Prototype 學(xué)習(xí) 工具函數(shù)學(xué)習(xí)($A使用方法)2009-07-07初學(xué)prototype,發(fā)個(gè)JS接受URL參數(shù)的代碼
初學(xué)prototype,發(fā)個(gè)JS接受URL參數(shù)的代碼...2007-01-01