fix : replaceall ()はJavaScriptの関数ではありません.


なぜこのエラー?


このようなエラーが発生します.TypeError : ReplaceAll関数はreplacealler ()関数を使用している間、関数ではありません.なぜなら、ノードのjsやブラウザのバージョンがこの関数をサポートしていないからです.
ReplaceAllメソッドはES 2012またはES 12を追加しましたので、あなたが12の下でECMAScriptバージョンを使用しているならば、確かに、以前のバージョンでReplaceAllのためにインプリメンテーションがないので、あなたはこの誤りがわかるでしょう.

どのように問題を修正するには?​


この問題に対する回避策として、replace ()メソッドを使用して、すべてのESバージョンとブラウザに対して強力なサポートを持っているグローバル(“G”)フラグセットを持つ正規表現を使用できます.
例を試してみましょう.
以下の例では、すべての空白文字("")とハイフン"-"を置き換えます.
function testReplace(sentence) {
  return sentence.replace(/[" "]/g, "-");
}

console.log(testReplace("This is Test"));

複数の場所でreplaceall ()を使う必要がある場合はどうしますか?


代わりにreplaceall ()メソッドの動作に似た関数を作成できます.
この例のように:
function someFunction(blogName) {
  return **replaceAll**(blogName, /[" "]/g, "-");
}


function replaceAll(sentence, regx, replaceBy) {
  return sentence.replace(regx, replaceBy);
}

console.log(someFunction("This is my blog"));

ここでreplaceall ()メソッドを使用するのは良いですが、別の実装では使えます.replaceall ()メソッドに対して実際のreplace ()メソッドとは異なる3つのパラメータを渡すことに注意してください.

結論


ecmascript 12のバージョンではreplaceall ()の実装はありません.これを解決するために、replaceally ()が使う正確なことをするためにreplace ()メソッドを使用するようになりました.

Please do share your feedback and experiences in the comments section below


場合は、この記事は、お友達や同僚と共有してください有用な発見!❤️
フォローミーオン⤵️
🌐