fix : replaceall ()はJavaScriptの関数ではありません.
1877 ワード
なぜこのエラー?
このようなエラーが発生します.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
場合は、この記事は、お友達や同僚と共有してください有用な発見!❤️
フォローミーオン⤵️
🌐
Reference
この問題について(fix : replaceall ()はJavaScriptの関数ではありません.), 我々は、より多くの情報をここで見つけました https://dev.to/shivampawar/fix-replaceall-is-not-a-function-in-javascript-3klpテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol