回答編集履歴

1

テンプレートリテラルの置き換え例を追加

2018/01/22 15:39

投稿

defghi1977
defghi1977

スコア4756

test CHANGED
@@ -1 +1,33 @@
1
1
  「`」で囲んだテンプレートリテラルはIE11では未サポートです. 素直に文字列の連結に置き換えましょう.
2
+
3
+
4
+
5
+ 書き換えの例
6
+
7
+
8
+
9
+ ```JavaScript
10
+
11
+ `<div id="preload-image-${i}" style="background-image: url('${imagePath}img/hanabira/Par_hanabira${i}.png');"></div>`
12
+
13
+ //↓
14
+
15
+ '<div id="preload-image-' + i + '" style="background-image: url(\'' + imagePath + 'img/hanabira/Par_hanabira'+ i + '.png\');"></div>'
16
+
17
+ ```
18
+
19
+
20
+
21
+ 書き換えのコツ
22
+
23
+ - 単なるテキスト連結なので, 一旦別のスクリプトで試してみて正しい結果が得られたものを元のスクリプトに埋め込む.
24
+
25
+ - 一度に書き換えると文字列の区切りがわかりにくくなるので, 少しずつ切り分けるようにする.
26
+
27
+ - 区切り文字として`'`と`"`の両方を含む場合は適切に文字を`\`でエスケープする.
28
+
29
+
30
+
31
+ NOTE:
32
+
33
+ なお, テンプレートとなる文字列を`replace`メソッドで置き換えたり, `[].join`で文字列を連結する方法もあります(パフォーマンスとしての有利不利は無視できるものとして).