Javascript 文字列メソッドの詳細な説明

Javascript 文字列メソッドの詳細な説明

文字列の長さ: 長さ

文字列内の指定された位置の値を取得する

charAt()

戻り値

str.charAt(2) // c
str[2] // c
str.charAt(30) // ''
str[30] // 未定義

index の値が str の長さの範囲内にない場合、str[index] は undefined を返し、charAt(index) は空の文字列を返します。

注意: str[index]はie6-ie8と互換性がありませんが、charAt(index)は互換性があります。

charCodeAt()

文字列インデックス位置の文字のUnicode値を取得します。

str.charAt(2) // c
str[2] // c
str.charAt(30) // ''
str[30] // 未定義

文字列に値が含まれているかどうかを確認する

インデックス()

文字を検索し、見つかった場合は最初の一致のインデックス位置を返し、見つからない場合は -1 を返します。正の順序で検索します。

str.indexOf('e')
// 4 インデックス位置 str.indexOf('e',5)
// -1

構文: string.indexOf(value,startIndex)

value: 必須。取得する文字列値を指定します。

startIndex: オプションの整数パラメータ。デフォルト値は 0 で、正の順序で検索する開始位置を意味します。有効な値は0からstring.length - 1です。

最後のインデックス()

文字を検索し、見つかった場合は最後に一致した位置を返し、見つからない場合は -1 を返します。indexOf とは逆に、逆順に検索します。

str.lastIndexOf('e')
// 10
str.lastIndexOf('e',8) // 0-8 インデックス内で e を逆順に検索します
// 4
str.lastIndexOf('e',3) // 0~3のインデックス内でeを逆順に検索します
// -1

構文: string.lastIndexOf(value,startIndex)

value: 必須。取得する文字列値を指定します。

startIndex: オプションの整数パラメータ。デフォルト値は string.length - 1 で、開始インデックス位置を逆順に検索するために使用されます。有効な値は0からstring.length - 1です。

を含む()

文字列に指定された部分文字列が含まれているかどうかを判断します。一致する文字列が見つかった場合は true を返し、それ以外の場合は false を返します。

str.includes('e') // 真
str.includes('e',11) // 偽 

構文: string.includes(value, startIndex)

value: 必須。取得する文字列値を指定します。

startIndex: オプションの整数パラメータ。デフォルトは 0 で、検索はインデックス位置から開始されます。有効な値は0からstring.length - 1です。

開始()

このメソッドは、文字列が指定された部分文字列で始まるかどうかを検出するために使用されます。指定された部分文字列で始まる場合は true を返し、それ以外の場合は false を返します。

str.startsWith('ab') // 真
str.startsWith('ef') // 偽
str.startsWith('ef',4) // 真

構文: string.startsWith(value, startIndex)

value: 必須。取得する文字列値を指定します。

startIndex: オプションの整数パラメータ。デフォルトは 0 で、検索はインデックス位置から開始されます。有効な値は0からstring.length - 1です。

終了()

このメソッドは、現在の文字列が指定された部分文字列で終わるかどうかを判断するために使用されます。渡された部分文字列が検索文字列の末尾にある場合は true を返し、それ以外の場合は false を返します。

str.endsWith('ba') // 真
str.endsWith('ef') // 偽
str.endsWith('ef',6) // 真

構文: string.endsWith(value, length)

value: 必須。取得する文字列値を指定します。

length: 部分文字列の長さ。デフォルトは元の文字列の長さ string.length

文字列の連結

連結

2 つ以上の文字列を連結します。このメソッドは元の文字列を変更せず、2 つ以上の文字列を連結した新しい文字列を返します。

a = 'asdf' とします
b = '123' とします
s = a.concat(b) とします。
s2 = a + bとする
コンソール(a,b,s,s2)
// 'asdf' '123' 'asdf123' 'asdf123'

構文: string.concat(string1, string2, ..., stringX)

​ 文字列の後に文字列1、文字列2...文字列Xを連結する

「+」記号

上記の連絡先の例に示すように、この方法は一般的に使用され、シンプルで効率的です。

文字列を配列に分割する

スプリット()

文字列を文字列の配列に分割します。このメソッドは元の文字列を変更しません。

str.split('') // ["a", "b", "c", "d", "e", "f", "g", "h", "g", "f", "e", "d", "c", "b", "a"]
str.split('',4) // ["a", "b", "c", "d"]
str.split('',20) // ["a", "b", "c", "d", "e", "f", "g", "h", "g", "f", "e", "d", "c", "b", "a"]

構文: string.split(separator,limit)

セパレーター: 必須。文字列または正規表現、このパラメータで指定された場所から文字列を分割します

制限: オプション。このパラメータは、返される配列の最大長を指定します。このパラメータが設定されている場合、このパラメータで指定された配列よりも多くの部分文字列は返されません。このパラメータが設定されていない場合、文字列の長さに関係なく文字列全体が分割されます。

文字列の傍受

スライス()

文字列の一部を抽出し、抽出した部分を新しい文字列として返します。

str.slice(1,3) // bc
str.slice(-3,-1) // cb

構文: string.slice(start,end)

start: 必須。 抽出するセグメントの開始インデックス。最初の文字は位置 0 になります。負の数の場合は末尾から切り取られます。

end: オプション。 切り捨てられるセグメントの末尾のインデックス。このパラメータを指定しない場合、抽出される部分文字列には元の文字列の先頭から末尾までの文字列が含まれます。このパラメータが負の場合、文字列の末尾からの位置を指定します。

開始が負の数の場合、終了は開始より大きく、0より小さくなければなりません。

このメソッドによって返される部分文字列には、先頭の文字が含まれますが、末尾の文字は含まれません。

サブストラクチャ()

開始添え字から始まる文字列から指定された数の文字を抽出するために使用されます。

str.substr(5) // fghgfedcba
str.substr(5,3) // fgh

構文: string.substr(start,length)

start: 必須。抽出する部分文字列の開始インデックス。数値である必要があります。負の数の場合、パラメータは文字列の末尾から始まる位置を宣言します。末尾から始まることを示す負の数にすることもできます。

長さ: オプション。部分文字列内の文字数。数値である必要があります。このパラメータを省略すると、文字列の先頭から末尾までの文字列が返されます。

部分文字列()

文字列内の指定された2つの添え字の間の文字を抽出するために使用します。

str.substring(3,5) // de
str.substring(5,3) // de

構文: string.substring(start, end)

start: 必須。抽出する部分文字列の最初の文字の文字列内の位置を指定する負でない整数。

end: オプション。抽出する部分文字列の最後の文字の文字列内の位置より 1 大きい非負の整数。このパラメータを省略すると、返される部分文字列は文字列の末尾で終了します。

知らせ:

start も end も負の数値を受け入れません。返される部分文字列には start が含まれますが、end は含まれません。start = end の場合、空の文字列が返されます。start < end の場合、メソッドは 2 つのパラメータを自動的に交換します。

文字列の大文字と小文字の変換

小文字に変換()

文字列を小文字に変換します。

t = 'AXC' とします
t.toLowerCase() // axc

大文字に変換()

文字列を大文字に変換します。

str.toUpperCase() // ABCDEFGHGFEDCBA

文字列パターンマッチング

交換する()

文字列内の一部の文字を他の文字に置き換えたり、正規表現に一致する部分文字列を置き換えたりするために使用されます。

str.replace('b',11) // a11cdefghgfedcba
str.replace(/b/g,11) // a11cdefghgfedc11a g: はグローバルを意味します。そうでない場合は、デフォルトで最初のものを置き換えます。i: 大文字と小文字を区別しないことを意味します。

構文: string.replace(oldValue, newValue)

oldValue: 必須。置換する部分文字列またはパターンを指定する RegExp オブジェクト。値が文字列の場合、最初に RegExp オブジェクトに変換されるのではなく、取得されるリテラル テキスト パターンとして扱われます。

newValue: 必須。文字列値。置換テキストまたは置換テキストを生成する関数を指定します。

すべて置換()

replace() メソッドのグローバル置換:

str.replace(/b/g,11) str.replaceAll('b',11)と同等です。

マッチ()

文字列内の指定された値を検索したり、1 つ以上の正規表現に一致するものを検索したりするために使用されます。このメソッドは indexOf() や lastIndexOf() に似ていますが、文字列内の位置ではなく指定された値を返します。

str.match('ghg') // ["ghg", インデックス: 6, 入力: "abcdefghgfedcba", グループ: 未定義]
str.match(/ghg/g) // ["ghg"]
str.match(/a/g) // ["a", "a"]
str.match(/t/g) // null

構文: string.match(regexp)

regexp 必須。一致させるパターンを指定する RegExp オブジェクト。

このメソッドは、一致する結果を含む配列を返します。この配列の内容は、regexp にグローバル フラグ g があるかどうかによって異なります。

検索()

文字列内の指定された部分文字列を検索したり、正規表現に一致する部分文字列を検索したりするために使用されます。

str.search(/ghg/) // 6
str.search(/a/) // 0
str.search(/a/g) // 0
str.search(/t/g) // -1

構文: string.search(value)

regex は、文字列内で検索される部分文字列、または検索される RegExp オブジェクトになります。

知らせ:

大文字と小文字を区別しない検索を実行するには、i フラグを追加します。このメソッドはグローバル マッチングを実行せず、フラグ g を無視します。つまり、最初の成功したマッチングの結果のみが返されます。一致する部分文字列が見つからない場合は -1 が返されます。 regexp に一致する str 内の最初の部分文字列の開始位置を返します。

文字列から空白を削除する

トリム()

文字列の先頭と末尾の空白文字を削除するために使用されます。このメソッドは元の文字列を変更しません。このメソッドは、null、undefined、および Number 型には適用できません。

s = ' 123 ' とします
s.trim() // '123'

トリム開始()

文字列の先頭の空白を削除するために使用されます。このメソッドは元の文字列を変更しません。

s = ' 123 ' とします
s.trimStart() // '123'

トリム終了()

文字列の末尾の空白文字を削除するために使用されます。このメソッドは元の文字列を変更しません。

s = ' 123 ' とします
s.trimEnd() // '123'

他の型は文字列に変換されます

文字列を変換する()

適用対象: BooleanArrayNumber

arr = [1,2,3]とする
数値を123とします
ブール値を true にする
obj = {a:1} とします
arr.toString() // '1,2,3'
num.toString() // '123'
bool.toString() // 'true'
obj.toString() // '[オブジェクト オブジェクト]'

構文: notStr.toString()

弦()

適用対象: BooleanArrayNumber

arr = [1,2,3]とする
数値を123とします
ブール値を true にする
obj = {a:1} とします
文字列(arr) // '1,2,3'
文字列(数値) // '123'
文字列(bool) // 'true'
String(obj) // '[object オブジェクト]'

構文: String(notStr)

暗黙的な変換

非文字列 + 文字列 = 文字列。まず元のデータ型を暗黙的に文字列に変換し、次に新しい文字列を追加します。

適用対象: BooleanArrayNumbernull

arr = [1,2,3]とする
数値を123とします
ブール値を true にする
obj = {a:1} とします
ar+'' // '1,2,3'
arr+'t' // '1,2,3t'
数字+'t' // '123t'
bool+'' // 'true'
obj+'' // '[オブジェクト オブジェクト]'
null+'' // 'null'

JSON.文字列化()

適用対象: BooleanArrayNumbernullundefined

arr = [1,2,3]とする
数値を123とします
ブール値を true にする
obj = {a:1} とします
JSON.stringify(arr) // '[1,2,3]' は括弧 [] を保持します
JSON.stringify(数値) // '123'
JSON.stringify(bool) // 'true'
JSON.stringify(obj) // '{"a":1}'
JSON.stringify(null) // 'null'
JSON.stringify(NaN) // 'null'

JSON.parse()を使用して復元する

arr = [1,2,3]とする
数値を123とします
ブール値を true にする
obj = {a:1} とします
JSON.parse(JSON.stringify(arr)) // [1,2,3]
JSON.parse(JSON.stringify(num)) // 123
JSON.parse(JSON.stringify(bool)) // 真
JSON.parse(JSON.stringify(obj)) // {a:1}
JSON.parse(JSON.stringify(null)) // null
JSON.parse(JSON.stringify(NaN)) // null

文字列を繰り返す

繰り返す()

元の文字列を n 回繰り返して新しい文字列を返します。

'cv'.repeat(3) // 'cvcvcv'
'cv'.repeat(0) // ''
'cv'.repeat(2.6) // 'cvcv'
'cv'.repeat('3') // 'cvcvcv'
'cv'.repeat('3a') // ''

構文: string.repeat(number)

数値: 繰り返し回数

知らせ:

0 の場合は、空の部分文字列が返されます。負の数または無限大の整数に切り捨てられた場合は、エラーが報告されます。0 から -1 までの負の小数または NaN は 0 に相当します。数値が文字列の場合は、最初に数値型に変換されます。数値型の文字列は、対応する数値に自動的に変換され、次に 0 に相当する非数値型の文字列が繰り返されます。

パディング文字列の長さ

パッド開始()

ヘッダーの完了

t = 'mosowe' とします
t.padStart(1,'nb') // 'モソウェ'
t.padStart(10,'nb') // 'nbnbmosowe'
t.padStart(10,'') // 'モソウェ'
t.padStart(10) // 'モソウェ'

構文: string.padStart(length,str)

長さ: パディング後の文字列の長さ

str: 補完する文字列

知らせ:

元の文字列の長さが指定された最小長以上である場合、元の文字列が返されます。補完する文字列と元の文字列の長さの合計が指定された最小長を超える場合、2 番目のパラメータが省略されていると、補完された文字列は切り捨てられます。デフォルトでは、長さを補完するためにスペースが使用されます。2 番目のパラメータが空の文字列の場合、補完は実行されません。

パッド終了()

終了完了については、padStart() を参照してください。

文字列を数値に変換するparseInt()

parseInt("10") // 10
parseInt("10.11") // 10
parseInt("16",8) // 14 = 8+6 なので、8進数に変換 parseInt("010") // 10。ブラウザによっては8になるというものもありますが、国内のブラウザをいくつか試してみたところ、すべて10でした。
parseInt("") // NaN
parseInt("unh") // NaN
parseInt("123tt") // 123
parseInt("tt123") // NaN

構文: parseInt(string, radix)

文字列: 必須。解析する文字列

基数: オプション。解析する数値の基数を示します。値の範囲は 2 ~ 36 で、デフォルトは 10 です。

パースフロート()

10進浮動小数点数に変換する

parseFloat("10") // 10
parseFloat("10.11") // 10.11
parseFloat("10.11.11111") // 10.11
parseFloat("010") // 10
parseFloat("") // NaN
parseFloat("unh") // NaN
parseFloat("123tt") // 123
parseFloat("tt123") // NaN

構文: parseFloat(string)

JSON.parse()

JSON.parse("10") // 10
JSON.parse("10.11") // 10.11
JSON.parse("10.11.11111") // エラー
JSON.parse("010") // エラー
JSON.parse("") // エラー
JSON.parse("unh") // エラー
JSON.parse("123tt") // エラー
JSON.parse("tt123") // エラー

構文: JSON.parse(string)

番号()

数値('') // 0
数値('10') // 10
数値('010') // 10
数値('2.3') // 2.3
数値('2.3.3') // NaN
数値('2TT') // NaN
数値('TT2') // NaN

構文: Number(string)

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • 一般的な JavaScript 文字列メソッド 28 個と使用方法のヒントのまとめ
  • JavaScript でよく使われるいくつかの文字列メソッドの概要 (初心者必読)
  • 日付型フィールドをJSON文字列に変換するJavaメソッド
  • JavaScript で文字列内の最長の単語を見つける 3 つの方法 (推奨)
  • JavaScript 文字列を数値に変換する簡単な方法
  • JavaScript 文字列処理の一般的な操作方法のまとめ

<<:  MySQL の DOS ウィンドウの文字化け問題を解決する方法

>>:  nginxでイメージサーバーを構築する手順の詳しい説明(ルートとエイリアスの違い)

推薦する

Mysql系SQLクエリ文の書き順と実行順を詳しく解説

目次1. 完全なSQLクエリステートメントの記述順序2. 完全なSQL文の実行順序3. select...

期間限定フラッシュセール機能を実現するJavaScriptタイマー

この記事では、期間限定フラッシュセール機能を実装するためのJavaScriptの具体的なコードを参考...

Vueタイマーの実装方法

この記事では、参考までにタイマーを実装するためのVueの具体的なコードを紹介します。具体的な内容は次...

docker に基づいて nginxssl 設定を開始する

前提条件クラウドサーバー(Alibaba Cloud、Tencent CloudなどのcentOS)...

レスポンシブ Web デザインが価値のない 5 つの理由

この記事は Tom Ewer の Managewp ブログからのもので、現在人気のレスポンシブ デザ...

Vue-Jest自動テストの基本構成の詳しい説明

目次インストール構成よくある間違い事前テスト作業依存関係の扱いインスタンスとDOMを生成する要約する...

MacにHomebrewをインストールする際の注意点

最近、Xiao Ming は新しい Mac を購入し、独自のブログ Web サイトを構築したいと考え...

Linux ターミナルでドメイン IP アドレスを見つけるコマンド (5 つの方法)

このチュートリアルでは、Linux ターミナルでドメイン名またはコンピューター名の IP アドレスを...

mysql データはどこに保存されますか?

MySQLデータベースの保存場所: 1. MySQLがMyISAMストレージエンジンを使用する場合...

ES6分解課題の原理と応用

目次配列分割代入オブジェクトの分解代入分割割り当ての適用変数の値の交換関数から複数の値を返すマップ構...

keepalived+nginx の高可用性を実装する方法の例

1. keepalived の紹介Keepalived は、もともと LVS クラスタ システム内の...

純粋な CSS3 でモバイルの拡大と縮小の効果を実装するためのサンプル コード

この記事では、純粋な CSS3 を使用してモバイル端末での展開と折りたたみの効果を実装するサンプルコ...

開発環境にUbuntu 16をインストール後の初期設定

オフィスでは、Linux 開発環境として Ubuntu システムが必要です。現在、Ubuntu 16...

PDO を使用して SQL インジェクションを防ぐ原理の分析

序文この記事では、SQL インジェクションを回避するために pdo の前処理メソッドを使用します。詳...

HTML タグのカスタム属性に関する質問

以前の開発では、クラス、名前などの HTML のデフォルト属性を使用していました。 Huawei社の...