最近工作中用到,記錄一下:假設我們需要一個功能,把一個數字比如10000輸出為下面的字符串格式“10,000”,一般是寫一個方法,那么我希望更方便一點,直接向Number類型添加一個格式化方法,比如叫toFormat的方法來實現得到格式化后的字符串。
添加.d.ts定義
要在TypeScript中擴展一個基礎對象的方法需要預先告知編譯器有該方法才行:
1 interface Number { 2 toFormat(): string; 3 }
添加實現
具體實現根據需要編寫即可,需要注意的是要添加在原型對象上才行:
1 Number.property.toFormat = function () { 2 //拿到數字的值,即數字本身 3 var value = this.valueOf(); 4 //這里是具體的處理代碼,這里略過了 5 var str = "code"; 6 //返回即可 7 return str; 8 }
直接調用即可:
1 var i = 10000; 2 console.log(i.toFormat());
這里我的實現是使用JavaScript編寫的,如果是在TypeScript中,也可以使用TS的方式編寫。