web関連

【javascript】IEで「`(バッククォート)」がエラーになる話

javascriptファイルで「`(バッククォート)」を使ってたらIEで「文字が正しくありません」ってエラーが出た
条件分岐してIEでは読み込まれないように書いてもファイルに記述があるだけでエラーになったときの備忘録

原因

スマホ時にスマホのメニューバーを抜いた高さを取得するための記述の`${vh}px`が原因だった

let vh = window.innerHeight * 0.01;
document.documentElement.style.setProperty('--vh', `${vh}px`);

この`${vh}px`部分を

let vh = window.innerHeight * 0.01;
document.documentElement.style.setProperty('--vh', vh + 'px');

ってvh + 'px'に書き換えたら直った

調べてみたら「テンプレートリテラル」って呼ばれているもので
javascriptで「`(バッククォート)」を使うと+演算子とかを使わずに数値とか文字をくっつけたりできるみたい

知らんがな!

IE11は対応していないからこの「テンプレートリテラル」って「`(バッククォート)」を使うやつは使わない方がいいわ

なんでもかんでもコピペでやってると駄目だね
ちゃんとこのソースコードが何か理解しておかないといざエラーが起きた時に無駄に時間を消費してしまうわ
IEまじで消えねーかなぁ…

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。