JavaScriptにおける文字列操作に関するまとめ

4230 ワード

JavaScriptにおける文字列(Stringタイプ)の操作については常に忘れていたり、間違えていたりするので、今日はこの機会にまとめてみます.
StringタイプはすべてvalueOf()、toLocareStering()、toStering()方法があり、対象が示す基本文字列を返します.Stringタイプはいずれもlength属性があり、文字列の長さを表します.
1.文字の方法
  • charAt()とcharCodeAt()の両方の方法は、0に基づく文字位置のパラメータを受け入れる.charAt()メソッドは、与えられた位置の文字を一文字列で返します.
  • var str = 'hello world'
    console.log(str.charAt(1)) //e
    
    charCodeAt()は、その位置の文字列コードを返します.
    var str = 'hello world'
    console.log(str.charCodeAt(1)) //101
    
    TIP:charCodeAtおよびcharAtにおいて、着信パラメータが負またはその文字列の長さより大きい場合、charAt()は空の文字(「」)を返し、charCodeAt()はNANを返します.
    2.文字列の操作方法
  • concat()は、1つまたは複数の文字列をつなぎ合わせて新しい文字列を得るために使用される.元の文字列は変更されません.concat()は任意の複数のパラメータ、すなわち任意の複数の文字列をつなぎ合わせることができます.
  • var str = 'hello '
    var res = str.concat('world', '!')
    console.log(res) //hello world
    console.log(str) //hello
    
    TIP:concatから入ってきたパラメータが文字列でない場合は、最初にtoStringメソッドを呼び出して文字列に変換してスティッチングを試みます.
  • slice()substr()以上の3つの方法は、操作された文字列のサブ文字列を返します.また、いずれも1つまたは2つのパラメータを受け入れます.最初のパラメータはサブ文字列の開始位置を指定し、2番目のパラメータはサブ文字列がどこで終了するかを表します.slice()とsubstring()の2番目のパラメータは、サブ文字列の最後の文字列の後の位置を指定します.substr()は返した文字列の個数を指定します.以上の3つの方法とconcat()は文字列自体の値を変更せず、基本タイプの文字列のみを返します.
  • slice()メソッドは、入力された負の値を文字列の長さに加算します.substr()方法は負の最初のパラメータを文字列の長さに加え、負の第二のパラメータを0に変えます.substring()は負のすべてのパラメータを0に変換します.2番目のパラメータが1番目より大きいと、2つのパラメータ位置を交換します.
    var str = 'hello world'
    str.slice(3) // 'lo world'
    str.substring(3) // 'lo world'
    str.substr(3) // 'lo world'
    str.slice(3, 7) //'lo w'
    str.substring(3, 7) //'lo w'
    str.substring(3, 7) //'lo worl'
    
    var str = 'hello world'
    str.slice(-3) //'rld'      
    str.substring(-3) //'hello world',   0,                
    str.substr(-3) //'rld',          
    str.slice(3, -4)// 'lo w',             ,       
    str.substring(3, -4) //'hel',      0,    0 3   
    str.substr(3, -4) // ""      0,                     
    
    3.文字列の位置方法
  • indexOf()lastIndexOf()の2つの方法は、1つの文字列から与えられたサブ文字列を検索し、サブ文字列の位置を返します.サブ文字列が見つからない場合は-1を返します.この2つの方法の違いは、indexOf()が文字列の先頭から後にサブ文字列を検索し、lastIndexOf()方法は文字列の最後から検索することである.
  • var str = 'hello world'
    console.log(str.indexOf('o')) //4
    console.log(str.lastIndexOf('o')) //7
    
    indexOf()とlastIndexOf()は、第二のパラメータ表現を受けて、第何位から検索することもできます.
  • trim()メソッドは、文字列のコピーを作成し、前置および拡張子のすべてのスペースを削除し、結果を返します.
  • var str = '   hello world  '
    console.log(str.trim()) //'hello world'
    
  • toLowerCase()、toLocareLowerCase()、toUpperCase()、toLocaleUppercase()以上は文字列を大文字列に変換し、特にtoLocareLowerCase()、toLocaree UpperCase()は特定の地域に対する実現である.ですから、どの言語が分からない環境で、地域に対する方法を使ったほうが正確です.
  • match()この方法はRegExpのexec()方法と同じである.この方法はパラメータを受け入れます.正規表現か、またはRegExpオブジェクトです.
  • var str = 'cat, bat, sat, fat'
    var pattern = /.at/
    var matches = str.match(pattern)
    console.log(matches.index) //0
    console.log(matches[0]) //'cat'
    console.log(pattern.lastIndex) // 0
    
    このように、match()方法は配列を返します.
  • search()この方法は、match()メソッドのパラメータと同じ(文字列またはRegExpオブジェクトが指定する正規表現)です.この方法は、文字列の最初のマッチする項目のインデックスを返します.マッチする項目が見つからない場合は-1を返します.
  • var test = 'cat, bat, sat, fat'
    var pos = test.search(/at/)
    console.log(pos) // 1
    
  • replace()この方法は文字列を置換するために使用されてもよく、方法は2つのパラメータを受け入れることができる.最初のパラメータは正規表現または文字列とすることができ、2番目のパラメータは文字列または関数とすることができます.最初のパラメータが文字列である場合、すべてのサブ文字列を置換する場合は、正規表現を提供し、グローバルを指定する必要があります.
  • var text = 'cat, bat, sat, fat'
    var res = text.replace('at', 'ond')
    console.log(res) // 'cond, bat, sat, fat'
    res = text.replace(/at/g, ''ond")
    console.log(res) // "cond, bond, sond, fond"
    
  • split()この方法はご存知のように、指定された区切り記号に基づいて一つの文字列を複数のサブ文字列に分割して、一つの配列を構成します.
  • localeCompare()は、2つの文字列を比較する方法である.文字列がアルファベット内で文字列のパラメータの前に並ぶべきである場合、負の値を返します.文字列が文字列のパラメータに等しい場合は0を返します.文字列がアルファベット内で文字列のパラメータの後に並べば、正の値を返します.
  • from CharCode()この方法はStringコンストラクタの静的方法である.この方法は、1つまたは複数の文字列の符号化を行い、文字列に変換します.
  • String.fromCharCode(104, 101, 108, 108, 111) //hello
    
    以上はJavaScriptの文字列に関する基本的な操作です.