
replaceAll() 関数の使い方、大切な知識1選。
この記事では、将来プログラミングをできるようになるために、プログラムについて学んだ知識を解説していく記事です。
今日学んだプログラミングの知識。
replaceAll() 関数の使い方
replaceAll() 関数の使い方は
'何かしらの文字列や文章'.replaceAll('置き換える前の文字列', '置き換えた後の文字列');
のように使用し、第 1 引数の文字列を全て第 2 引数の文字列に変換します。
例えば以下のような内容をコンソール上で実行してみます。
今回のユーザー名の部分は太郎と適当な名前を入れます。
console.log(
'###userName###のいいところは優しいところです。'.replaceAll('###userName###', '太郎')
);
Copy
実行結果として 太郎のいいところは優しいところです。
と出力されるはずです。
引き続き assessment.js を編集していきましょう。
// 文字のコード番号の合計を回答の数で割って添字の数値を求める
const index = sumOfCharCode % answers.length;
-
const result = answers[index];
+
let result = answers[index];
-
// TODO ###userName### をユーザの名前に置き換える
+
result = result.replaceAll('###userName###', userName);
return result;
}
assessment.jsPlease Type!Please Type!
追加されたコードを見てみると、この記述は、 result の文章内の ###userName### という文字列のパターンを全て選択し、それら全てを変数 userName の表す部分文字列に置き換えています。
そうして新たにできた文字列を変数 result に再代入しているのです。
なお、 result を宣言するときの修飾子を const から let に変えました。 これは、先ほどまでは result は一度代入されたら再代入されない定数だったのに対して、 今回はresult.replaceAll() という関数の戻り値を再代入しているからです。
これをChrome で動かしてみると、
太郎のいいところは決断力です。太郎がする決断にいつも助けられる人がいます。
次郎のいいところは自制心です。やばいと思ったときにしっかりと衝動を抑えられる次郎が皆から評価されています。
太郎のいいところは決断力です。太郎がする決断にいつも助けられる人がいます。
と表示されたのではないでしょうか。
もしユーザー名を太郎ではなく、他のユーザー名を使用した場合は「太郎」と書かれている部分が自分で設定した名前であれば成功です。
これで診断機能の開発が完了しました。
まとめ
replaceAll() 関数の使い方について解説してい来ました、プログラミングには様々な関数があり、どれも覚えるのが難しいですがしっかり頭に身に付けていきたいです。
また、診断機能の開発など、今は記事を見ながらしかできませんが復習を重ねていき、いずれ1人で開発ができるようにしていきたいです。