Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9241

replaceAll()がJSに実装されてたのに、自分のバージョンが上がってなかったことに気付いた話

$
0
0
はじめに JavaだとreplaceAllがあったので、特に困ったことがなかったですが JavaScriptにはなかったので、文字列内で該当する全てを置換する際、ヒトクセ必要でした。 最近になってES12でreplaceAll()が使える様になったことを知ったので試してみました。 初投稿なので、優しくしてください。 とりあえず、私の環境(Mac:Chrome, FireFox, Safari どれもさっき更新しました。 と Node.js v15.14.0)は元気に↓動いてます。 やってみた。 古の技術 let str = 'いっぱい置換しろ〜〜〜なんとしても置換しろ〜〜〜頑張って置換しろ〜〜〜'; str = str.split('しろ〜〜〜').join('してくれてありがと♪♪♪'); console.log(str); => いっぱい置換してくれてありがと♪♪♪なんとしても置換してくれてありがと♪♪♪頑張って置換してくれてありがと♪♪♪ lodashで同じこと書いてみる。 let str = 'いっぱい置換しろ〜〜〜なんとしても置換しろ〜〜〜頑張って置換しろ〜〜〜'; str = _.join(_.split(str, 'しろ〜〜〜'),'してくれてありがと♪♪♪') console.log(str); => いっぱい置換してくれてありがと♪♪♪なんとしても置換してくれてありがと♪♪♪頑張って置換してくれてありがと♪♪♪ ES12 let str = 'いっぱい置換しろ〜〜〜なんとしても置換しろ〜〜〜頑張って置換しろ〜〜〜'; str = str.replaceAll('しろ〜〜〜', 'してくれてありがと♪♪♪'); console.log(str); => いっぱい置換してくれてありがと♪♪♪なんとしても置換してくれてありがと♪♪♪頑張って置換してくれてありがと♪♪♪ 正規表現もいける口(どうせ中身は呪文に変わるから滅多に使うな。と自分に言い聞かせながら) let str = 'いっぱい置換しろ〜〜〜なんとしても置換しろ〜〜〜頑張って置換しろ〜〜〜'; str = str.replaceAll(/しろ〜〜〜/ig, 'してくれてありがと♪♪♪'); console.log(str); => いっぱい置換してくれてありがと♪♪♪なんとしても置換してくれてありがと♪♪♪頑張って置換してくれてありがと♪♪♪ いつも通りIEは置き去りの様でした。 おしまい ちなみに「え?いつから?」ってなったので、こちらのページにリンクを貼ったGitHubのドキュメント更新履歴追いました。 結果ボリュームが多かったので、そんな細かいことは気にしたら負けだな。という結論に至ってます。 とても小さなことですがsplit + joinで、えっとコレで分けて繋げて・・・ ってコードからreplaceAllで、あ〜全置換ね。と言葉として直感的に理解しやすくなるんじゃないかと思います。 ただ、フロントエンドで上記の様な文字列操作を行うことは個人的にはあまり好きではないので できればバックエンドに実装したいです。 ^ ^

Viewing all articles
Browse latest Browse all 9241

Trending Articles