国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

JStrim去空格的最佳實踐_javascript技巧

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 21:01:20
文檔

JStrim去空格的最佳實踐_javascript技巧

JStrim去空格的最佳實踐_javascript技巧:剛好上次有同學(xué)提出疑問。剛好可以自測一下。先來看看老道在《JavaScript 精粹》P33 寫的吧。他對 String 對象擴(kuò)展了一個 trim() 方法: 代碼如下: Function.prototype.method = function(name, func) { this.prototype[n
推薦度:
導(dǎo)讀JStrim去空格的最佳實踐_javascript技巧:剛好上次有同學(xué)提出疑問。剛好可以自測一下。先來看看老道在《JavaScript 精粹》P33 寫的吧。他對 String 對象擴(kuò)展了一個 trim() 方法: 代碼如下: Function.prototype.method = function(name, func) { this.prototype[n

剛好上次有同學(xué)提出疑問。剛好可以自測一下。先來看看老道在《JavaScript 精粹》P33 寫的吧。他對 String 對象擴(kuò)展了一個 trim() 方法:
代碼如下:
Function.prototype.method = function(name, func) {
this.prototype[name] = func;
return this;
};

String.method('trim', function() {
return this.replace(/^\s+|\s+$/g, '');
});

熟悉吧,/^\s+|\s+$/g,這樣的正則表達(dá)式。多少框架在用呢。比如 jQuery 的 trimLeft, trimRight:
代碼如下:
// Used for trimming whitespace
trimLeft = /^\s+/,
trimRight = /\s+$/,

這是最佳實踐么?但我們框架使用的不是這種方法(暫且稱為半正則方法)。上次在其他產(chǎn)品組在內(nèi)部 PK 的時候,說過,為什么我們框架要用下面這樣的方法來實現(xiàn) trim(),而不是用上面的那種。
代碼如下:
trim: function(){
var str = this.str.replace(/^\s+/,'');
for(var i= str.length - 1; i >= 0; i--){
if(/\S/.test(str.charAt(i))){
str = str.substring(0,i+1);
break;
}
}
return str;
}

原因工友已經(jīng)說了,因為正則的反向匹配比較慢。我對其性能進(jìn)行了對比。綜合速度和寫法上來說,個人還是偏向于第一種寫法。因為速度其實相差很少很少。從代碼來說第二種比較晦澀并且并字節(jié)很多,這對于一個流量很高但需要用 trim() 很少的網(wǎng)站來說,第一種明顯比較合適,看看下面的測試結(jié)果(自已測試,猛擊這里):

trim

啊?原來不是半正則的方式最快啊?是的,其實很多高級瀏覽器中已經(jīng)默認(rèn)提供 trim() 了。速度就不用說了,100 倍?哈哈哈。最后,方案如下:
代碼如下:
if(!String.prototype.trim){
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g, '');
}
}

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JStrim去空格的最佳實踐_javascript技巧

JStrim去空格的最佳實踐_javascript技巧:剛好上次有同學(xué)提出疑問。剛好可以自測一下。先來看看老道在《JavaScript 精粹》P33 寫的吧。他對 String 對象擴(kuò)展了一個 trim() 方法: 代碼如下: Function.prototype.method = function(name, func) { this.prototype[n
推薦度:
標(biāo)簽: 空白 空格 js
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top 主站蜘蛛池模板: 在线欧美日韩 | 亚洲欧洲第一页 | 91精品国产高清91久久久久久 | 亚洲欧美日韩高清综合678 | 99久久免费国产精精品 | 九九热免费视频 | 亚洲欧美日韩国产综合 | 伊人色综合一区二区三区 | 欧美极品第一页 | 九九精品视频一区在线 | 国产不卡在线看 | 国产美女精品久久久久中文 | 青青成人福利国产在线视频 | 国产123区在线视频观看 | 精品视频免费看 | 毛片官网 | 中文字幕精品一区二区精品 | 久久综合精品国产一区二区三区 | 国产产一区二区三区久久毛片国语 | 欧美成人高清视频 | 国产男女无遮挡猛进猛出 | 亚洲色图欧美 | 国内精品久久久久 | 久久久国产一区二区三区 | 韩国精品欧美一区二区三区 | 日韩免费视频在线观看 | 亚洲一级二级 | 亚洲视频在线观看网站 | 国产中文字幕在线 | 另类国产精品一区二区 | 亚洲欧美综合 | 99久久精品免费看国产 | 亚洲一级二级三级 | 国产欧美日韩va | 久热中文字幕在线精品首页 | 国产精品麻豆 | 国产成人一区二区三区免费观看 | 国产一区二区三区在线看 | 中文字幕一区二区三区在线观看 | 亚洲一区二区三区在线 | 精品欧美一区二区在线观看欧美熟 |