Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

配列をループして文字列JavaScriptを編集します


たとえば、最初の引数として文字列を受け入れ、その後に任意の数の単語を受け入れるtranslate()などの関数を作成する必要があるとします。

文字列には、実際には次のようなn個の$記号が含まれます-

This $0 is more $1 just a $2.
Then there will be 3 strings which will replace the corresponding places.

例-

関数呼び出しが次のような場合-

translate(‘This $0 is more $1 just a $2.’, ‘game’, ‘than’, ‘game’);

関数の出力は-

である必要があります
This game is more than just a game.

この機能は、JavaScriptに挿入するテンプレートにほぼ似ています。

したがって、この関数のコードを書いてみましょう-

ここでは、String.prototype.replace()メソッドを使用します。正規表現パターンを使用してすべてのオカレンスを照合し、2番目のパラメーターとして関数を使用すると、一致ごとに実行されることがわかっています。ここでもまったく同じことを行います。

これを行うためのコードは-

になります

const str = 'This $0 is more $1 just a $2';
const translate = (str, ...texts) => {
   const regex = /\$(\d+)/gi;
   return str.replace(regex, (item, index) => {
      return texts[index];
   });
};
console.log(translate(str, 'game', 'just', 'game'));

出力

コンソールの出力は-

になります
This game is more just just a game

  1. JavascriptのTextDecoderとTextEncoder?

    TextEncoderは、指定された文字列をutf-8標準に変換するために使用されます。文字列からUint8Arrayを再調整します。 TextDecoderは、バイトのストリームをコードポイントのストリームに変換するために使用されます。 UTF-8、ISO-8859-2、KOI8-R、GBKなどをデコードできます。 以下は、JavaScriptのTextDecoderとTextEncoderのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="

  2. JavaScriptでオブジェクトを含む配列の配列をループするにはどうすればよいですか?

    以下は、JavaScriptのオブジェクトを含む配列の配列をループするコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>