ホームページ  >  記事  >  ウェブフロントエンド  >  Javascript_javascript スキルにおけるさまざまなトリムの実装の詳細な分析

Javascript_javascript スキルにおけるさまざまなトリムの実装の詳細な分析

WBOY
WBOYオリジナル
2016-05-16 17:10:071007ブラウズ

これは lgzx 社からのインタビューの質問です。js の文字列に、文字列の両側の空白文字 (スペース、タブ、フォーム フィードなどを含む) を削除するメソッドを追加する必要があります。

コードをコピー コードは次のとおりです。

String.prototype.trim = function() {
//return this.replace(/[(^s )(s $)]/g,"");//文字列の途中にある空白文字も削除されます
//return this.replace(/^ s |s $/g,""); //
return this.replace(/^s /g,"").replace(/s $/g,""); 🎜>}

JQuery1.4.2、Mootools は

コードをコピー コードは次のとおりです。
function trim1(str){
return str.replace(/^(s|xA0) |(s|xA0) $/g, ''); >

jQuery1.4.3 (Prototype で使用)、このメソッドはパフォーマンスをわずかに向上させるために g を削除し、小規模な文字列を処理する場合のパフォーマンスが向上します。


Copy code コードは次のとおりです: function trim2(str){
return str.replace(/^(s|u00A0) /,'' ).replace(/(s|u00A0) $/, '');
}


パフォーマンス テストを実施した後、Steven Levithan は JS で文字列を切断する最も速い方法を提案しました。長い文字列を処理するときのパフォーマンス


コードをコピー コードは次のとおりです。function trim3(str ){
str = str.replace (/^(s|u00A0) /,'');
for(var i=str.length-1; i>=0; i--){
if(/S/.test(str .charAt(i))){
str = str.substring(0, i 1) 🎜>
最後に言及する必要があるのは、ECMA- 262 (V5) は、ネイティブのトリム メソッド (15.5.4.20) を String に追加します。さらに、TrimLeft メソッドと TrimRight メソッドが Molliza Gecko 1.9.1 エンジンの String に追加されました。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。