console.log("1.2".replace("1.2", "X")) // X
console.log("102".replace("1.2", "X")) // 102
console.log("1.2".replaceAll("1.2", "X")) // X
console.log("102".replaceAll("1.2", "X")) // 102
console.log("1.2".match("1.2")) // ["1.2", index: 0, input: "1.2", groups: undefined]
console.log("102".match("1.2")) // ["102", index: 0, input: "102", groups: undefined]
console.log("1.2".matchAll("1.2").next().value) // ["1.2", index: 0, input: "1.2", groups: undefined]
console.log("102".matchAll("1.2").next().value) // ["102", index: 0, input: "102", groups: undefined]
match は文字列型でも正規表現としてマッチングされる
replace の挙動に揃えてほしいけど互換性重視で実現されないだろうね
ただの match だと正規表現にしたくないなら indexOf や includes で良かったけど matchAll は indexOf 繰り返すの面倒だから文字列型として使いたいのに