給JS物件新增擴充套件方法

2021-08-19 16:44:12 字數 1009 閱讀 3013

如何在js中像c#語法一樣,呼叫str.trim()呢?

在js中string物件自己也有trim方法,可通過str.trim()實現

在jquery中jquery物件也封裝了trim方法,可通過$.trim(str)實現

可是對於trimstart,trimend的方法,js的string物件並沒有對應方法,jquery也同樣沒有封裝。所以對於使用非常多的方法,我們可以自己封裝。這裡拿trim的一組方法為例,如下

1.給jquery物件新增擴充套件

jquery.extend(,

trimleft: function (text) ,

trimright: function (text)

})

2.給js的string物件新增擴充套件

/*

*字串去除兩側空格或指定字元

*注意:引數str中如果包含正則通配字元,如"."請改引數為"\\."

*/string.prototype.trimall = function (str) ;

/**字串去除左側空格或指定字元

*注意:引數str中如果包含正則通配字元,如"."請改引數為"\\."

*/string.prototype.trimleft = function (str)

/**字串去除右側空格或指定字元

*注意:引數str中如果包含正則通配字元,如"."請改引數為"\\."

*/string.prototype.trimright = function (str)

如何呼叫

var str = '       空格    ';

var res1 = str.trim();

var res2 = $.trim(str);

var res3 = str.trimleft();

var res4 = $.trimright(str);

JS給數字新增擴充套件方法

擴充套件方法就是給原生型別新增方法,讓物件用起來更加方便,js作為乙個動態語言,只要在原型鏈上稍作修改就可以給現有類新增方法 在js裡提類可能不太恰當,但是我想不出別的說法了 先回憶一下如何給array新增乙個拓展方法 array.prototype.get function index 這樣就給a...

動態給物件新增屬性和方法

正常情況下,我們定義了乙個class,建立乙個class的例項後,我們可以給該例項繫結任何的屬性和方法,這就是動態語言的靈活性。動態給物件新增屬性和方法 class.屬性名 屬性值 class.方法名 函式 這裡說的動態加屬性和方法主要指的是關於 slots 函式的使用 slots 屬性名,函式名 ...

js中給json物件新增新的屬性

1 現有乙個json物件為jsonobj,需要給這個物件新增新的屬性newparam,同時給newparam賦值為pre。做法如下 var jsonobj 定義乙個json物件 json.array1 2 4 增加乙個新屬性array1,此屬性是陣列 json.array1 json.array1....