ECMAScript 6の準備6:新しい文字列メソッド - String.Prototype。*
いくつかの例を作成し、それらが利用できるポリフィルについて言及します。 1つのライブラリを使用してすべてポリフィルする場合は、Paul MillerがES6-Shimを使用できることを忘れないでください。
キーテイクアウト
- String.Prototype.Repeat()メソッドのES6のメソッドは、指定された数回繰り返される元の文字列を含む新しい文字列を返します。 string.raw()関数は、文字列をコンパイルし、プレースホルダーを提供された値に置き換えるテンプレート文字列のタグ関数です。
- string.prototype.startswith()
- すべての最新のプログラミング言語で最もよく使用される関数の1つは、文字列が特定のサブストリングで始まるかどうかを確認するものです。 ES6の前に、JavaScriptにはそのような機能がありませんでした。つまり、自分で書かなければなりませんでした。次のコードは、開発者が通常それをポリフィールした方法を示しています:
- または、あるいは
サブストリングに加えて、2番目の引数を受け入れることがわかります。 SearchStringパラメーターは、確認するサブストリングを指定します。文字列の開始です。位置は、検索を開始する位置を示します。位置のデフォルト値は0です。文字列が提供されたサブストリングから始まり、それ以外の場合はstringがtrueを返します。この方法はケースに敏感であるため、「こんにちは」は「こんにちは」とは異なることを忘れないでください。
この方法の使用の例を以下に示します:<span>if (typeof String.prototype.startsWith !== 'function') { </span> <span>String.prototype.startsWith = function (str){ </span> <span>return this.indexOf(str) === 0; </span> <span>}; </span><span>} </span>
<span>if (typeof String.prototype.startsWith !== 'function') { </span> <span>String.prototype.startsWith = function (str){ </span> <span>return this.indexOf(str) === 0; </span> <span>}; </span><span>} </span>
前のコードのライブデモを以下に示し、jsbinでも入手できます。
この方法は、Internet Explorerを除き、ノードおよびすべての最新のブラウザーでサポートされています。古いブラウザをサポートする必要がある場合は、この方法のポリフィルをMDNのメソッドのページに記載しています。別のポリフィルもMathias Bynensによって開発されましたstring.prototype.endswith()
ご覧のとおり、この方法はstring.prototype.startswith()と同じパラメーターを受け入れ、同じタイプの値も返します。
違いは、文字列が長いかのように文字列内で検索できることです。言い換えれば、ストリングハウスを持っていて、「house」( 'us'、4)でメソッドを呼び出す場合、実際に弦楽屋を持っているようなものだからです(欠けている「e」に注意してください) 。<span>if (typeof String.prototype.startsWith !== 'function') { </span> <span>String.prototype.startsWith = function (str){ </span> <span>return this.substring(0, str.length) === str; </span> <span>}; </span><span>} </span>
この方法の使用の例を以下に示します:
前のスニペットのライブデモを以下に示し、JSBINでも入手できます。
この方法は、Internet Explorerを除き、ノードおよびすべての最新のブラウザーでサポートされています。古いブラウザをサポートする必要がある場合は、この方法のポリフィルをMDNのメソッドのページに記載しています。別のポリフィルは、Mathias Bynensによって開発されました
string.prototype.includes()<span>String.prototype.startsWith(searchString[, position]); </span>
その構文を以下に示します:
パラメーターの意味は、string.prototype.startswith()の場合と同じです。したがって、繰り返されません。この方法の使用の例を以下に示します:
以下のライブデモを見つけることができます。また、JSBINのように。
string.prototype.includes()は、インターネットエクスプローラーを除き、ノードおよびすべての最新のブラウザーでサポートされています。このチュートリアルで説明した他の方法と同様に、古いブラウザをサポートする必要がある場合は、Mathias Bynensが提供するポリフィルを見つけることができます(この男は自分の仕事をする方法を知っています!)、Mozilla開発者ネットワークで別のポリフィルを見つけることができます。 注:バージョン48まで、Firefoxは標準以外の名前が含まれています。<span>const str = 'hello!'; </span><span>let result = str.startsWith('he'); </span> <span>// prints "true" </span><span>console.log(result); </span> <span>// verify starting from the third character </span>result <span>= str.startsWith('ll', 2); </span> <span>// prints "true" </span><span>console.log(result); </span>
次に、別のタイプのメソッドに進みましょう。 string.prototype.repeat()は、呼び出されたのと同じ文字列を含む新しい文字列を返すメソッドですが、指定された回数を繰り返します。この方法の構文は次のとおりです
<span>if (typeof String.prototype.startsWith !== 'function') { </span> <span>String.prototype.startsWith = function (str){ </span> <span>return this.indexOf(str) === 0; </span> <span>}; </span><span>} </span>
Timesパラメーターは、文字列を繰り返す必要がある回数を示します。ゼロを渡すと、空の文字列が得られますが、負の数や無限を渡すと、範囲が得られます。
この方法の使用の例を以下に示します:前のコードのライブデモを以下に示し、JSBINでも入手できます。
<span>if (typeof String.prototype.startsWith !== 'function') { </span> <span>String.prototype.startsWith = function (str){ </span> <span>return this.substring(0, str.length) === str; </span> <span>}; </span><span>} </span>
string.raw()
このチュートリアルで説明したい最後の方法は、string.raw()です。テンプレート文字列のタグ関数として定義されています
。興味深いのは、ライブラリのテンプレートに代わるものだからですが、実際にそれらのライブラリを置き換えるのに十分なスケーリングができるかどうかは100%確信していません。ただし、このアイデアは基本的にまもなく表示されるのと同じです。それがすることは、文字列をコンパイルし、すべてのプレースホルダーを提供された値に置き換えることです。その構文は次のものです(バックテックに注意してください):
Templatestringパラメーターは、プロセスするテンプレートを含む文字列を表します。
この概念をよりよく理解するために、具体的な例を見てみましょう:
このメソッドは、オペラとインターネットエクスプローラーを除き、ノードおよびすべての最新のブラウザでサポートされています。古いブラウザをサポートする必要がある場合は、NPMで利用可能なこのようなポリフィルを使用できます。
結論<span>String.prototype.startsWith(searchString[, position]); </span>
ES6で導入された新しい文字列メソッドは、ECMAScript 2015としても知られています。これらには、startswith()、endswith()、()、repeat()、およびテンプレートリテラルなどの方法が含まれます。 startswith()メソッドは、文字列が指定された文字列で始まるかどうかをチェックし、endswith()は、文字列が指定された文字列で終了するかどうかをチェックします。 include()メソッドは、文字列に指定された文字列が含まれているかどうかをチェックします。 Repeat()メソッドは、指定された数回文字列を繰り返します。テンプレートリテラルを使用すると、$ {} syntaxを使用して、文字列リテラル内に式を埋め込むことができます。
startswith()メソッドは、es6?
es6のstartswith()メソッドをどのように使用して、文字列が指定された文字列の文字で始まるかどうかを判断するために使用されます。文字列が指定された文字列から始まり、それ以外の場合はfalseでtrueが返されます。構文はstr.Startswith(SearchString [、position])です。検索ストリングは、STRの開始時に検索されるキャラクターです。オプションの位置は、検索が開始される文字列の位置です。省略した場合、検索は文字列の先頭から始まります。指定された文字列の文字。文字列が指定された文字列で終了し、それ以外の場合はfalseで終了する場合にtrueが返されます。構文はstr.endswith(searchstring [、length])です。検索ストリングは、STRの終わりに検索されるキャラクターです。オプションの長さは、検索する文字列の長さです。省略すると、文字列の長さが使用されます。別の文字列内に見つかりました。文字列に指定された文字列が含まれている場合、それ以外の場合はfalseが含まれている場合にtrueが返されます。構文はstr.includes(searchstring [、position])です。検索ストリングは、検索する文字列です。オプションの位置は、検索を開始する文字列内の位置です。省略した場合、検索は文字列の先頭から始まります。指定された文字列のコピー数は、呼び出され、結合されました。構文はstr.Repeat(count)で、ここで、カウントは文字列を繰り返す回数です。カウントは0から無限の間でなければ、負の数ではない必要があります。
ES6でテンプレートリテラルはどのように機能しますか?マルチライン文字列と弦補間機能を使用できます。それらは、二重または単一の引用符の代わりに、バックチック()文字で囲まれています。テンプレートリテラルには、ドルサインとカーリーブレース($ {expression})で示されるプレースホルダーを含めることができます。プレースホルダーの式とそれらの間のテキストは関数に渡されます。 )メソッドは、文字列に指定された文字列が含まれているかどうかを確認するために使用されます。ただし、それらには重要な違いがあります。 include()メソッドはブール値を返します - 文字列に指定された文字列が含まれている場合はtrue、それ以外の場合はfalseです。一方、indexOF()メソッドは、指定された文字列の最初の発生のインデックスを返します。文字列が見つからない場合は-1。すべてのブラウザでES6文字列メソッドを使用できますか?
ほとんどの最新のブラウザーはES6文字列メソッドをサポートしています。ただし、ES6をサポートしていない古いブラウザの場合、BABELなどのトランスピラーを使用してES6コードをES5に変換する必要がある場合があります。 🎜>
いくつかのES6文字列メソッドは、配列で使用できます。たとえば、include()メソッドを使用して、配列に特定の要素が含まれているかどうかを判断できます。ただし、すべての文字列メソッドが配列に適用できるわけではありません。各メソッドの特定の使用と制限を理解することが重要です。タグ付きテンプレートを使用すると、テンプレートリテラルを関数で解析できます。タグ関数の最初の引数には、文字列値の配列が含まれています。残りの議論は式に関連しています。タグ関数は、これらの引数で操作を実行し、操作された文字列を返します。以上がECMAScript 6の準備6:新しい文字列メソッド - String.Prototype。*の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。
