ES 6-文字列拡張の方法


209.05.27 10:14
一、サブストリングの識別
ES 6は、文字列がサブストリングを含むかどうかを判断する前に、indexOf方法で、ES 6にサブストリングの識別方法が追加された.1、includes():ブール値を返し、パラメータ文字列が見つかったかどうかを判断する.2、startsWith():ブール値を返し、パラメータ文字列が元の文字列のヘッダにあるかどうかを判定する.3、endsWith():ブール値を返し、パラメータ文字列が元の文字列の末尾にあるかどうかを判定する.以上の3つの方法は、2つのパラメータを受け入れることができます.検索する文字列と、任意の検索開始位置インデックスが必要です.
注意:
この3つの方法はブール値だけを返します.サブストリングの位置を知る必要があるなら、やはり使います.indexOflastIndexOfこの3つの方法は、正規表現が文字列ではなくて伝わったら、エラーが発生します.に対するindexOflastIndexOfの2つの方法は、正規表現を文字列に変換して検索する.
例:
let string = "apple,banana,orange";
string.includes("banana");     // true
string.startsWith("apple");    // true
string.endsWith("apple");      // false
string.startsWith("banana",6)  // true
二、文字列の繰り返しrepeat()は、指定回数を繰り返すと、新しい文字列を返します.
//                  
console.log("Hello,".repeat(2));  // "Hello,Hello,"

//      0   -1      ,       ,0   -1           -0 ,    repeat   
console.log("Hello,".repeat(3.2));  // "Hello,Hello,Hello,"

//      0   -1      ,       ,0   -1           -0 ,    repeat   
console.log("Hello,".repeat(-0.5));  // ""

//      NaN,    repeat   
console.log("Hello,".repeat(NaN));  // ""

//          Infinity ,   :
console.log("Hello,".repeat(-1));  // RangeError: Invalid count value
console.log("Hello,".repeat(Infinity));  // RangeError: Invalid count value

//           ,            
console.log("Hello,".repeat("hh")); // ""
console.log("Hello,".repeat("2"));  // "Hello,Hello,"
三、文字列補完
1、padStart():新しい文字列を返し、パラメータ文字列で先頭から元の文字列を補完することを表します.2、padEnd():新しい文字列を返し、パラメータ文字列で末尾から元の文字列を補完することを表します.以上の2つの方法は、2つのパラメータを受け入れます.1番目のパラメータは、生成した文字列の最小長を指定し、2番目のパラメータは補完する文字列です.2番目のパラメータが指定されていない場合は、デフォルトではスペースで塗りつぶします.
console.log("h".padStart(5,"o"));  // "ooooh"
console.log("h".padEnd(5,"o"));    // "hoooo"
console.log("h".padStart(5));      // "    h"

//                     ,       :
console.log("hello".padStart(5,"A"));  // "hello"

//                      ,             :
console.log("hello".padEnd(10,",world!"));  // "hello,worl"

//        :
console.log("123".padStart(10,"0"));  // "0000000123"
四、テンプレート文字列
テンプレートの文字列は強化版の文字列に相当し、通常の文字列としてだけでなく、複数行の文字列を定義するためにも使用され、文字列に変数や表現を追加することができます.
注意:テンプレートの文字列の改行とスペースは保存されます.
//      
let string = `Hello'
'world`; console.log(string); // "Hello' // 'world" // : let string1 = `Hey, can you stop angry now?`; console.log(string1); // Hey, // can you stop angry now? // 。 // ${} ,${} JavaScript 。 let name = "Mike"; let age = 27; let info = `My Name is ${name},I am ${age+1} years old next year.` console.log(info); // My Name is Mike,I am 28 years old next year. function f(){ return "have fun!"; } let string2= `Game start,${f()}`; console.log(string2); // Game start,have fun! innerHtml = `
  • menu
  • mine
`; console.log(innerHtml); //
  • menu
  • mine
五、ラベルテンプレート
ラベルテンプレートは、テンプレート文字列で呼び出された関数の呼び出しです.
alert`Hello world!`;
//    
alert('Hello world!');
テンプレート文字列に変数があると、テンプレート文字列パラメータを複数のパラメータに処理します.
function f(stringArr,...values){
 let result = "";
 for(let i=0;i