回答編集履歴
4
テンプレートリテラルについてのメモを追加
answer
CHANGED
|
@@ -40,4 +40,12 @@
|
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
NOTE:
|
|
43
|
-
JavaScriptにもHTMLと同様に文字を文字コードで挿入する方法(`\uXXXX`)があります.
|
|
43
|
+
JavaScriptにもHTMLと同様に文字を文字コードで挿入する方法(`\uXXXX`)があります.
|
|
44
|
+
|
|
45
|
+
NOTE:
|
|
46
|
+
ES2015で導入された**テンプレートリテラル**を用いると, 文字列の定義の際に引用符の代わりにアクサングラーブ「`」を使うことも出来ます.
|
|
47
|
+
|
|
48
|
+
```JavaScript
|
|
49
|
+
a.after(`<div class='aaa'></div>`);
|
|
50
|
+
a.after(`<div class="aaa"></div>`);
|
|
51
|
+
```
|
3
解説文を修正
answer
CHANGED
|
@@ -4,23 +4,23 @@
|
|
|
4
4
|
<div class="aaa"></div>
|
|
5
5
|
<div class='aaa'></div>
|
|
6
6
|
```
|
|
7
|
-
のどちらを使っても良いのです. 但し`"`で囲った中に`"`が含まれる, もしくは`'`で囲った中に`'`が含まれるとHTML文法としてエラーになります.
|
|
7
|
+
のどちらを使っても良いのです. 但し`"`で囲った中に`"`が含まれる, もしくは`'`で囲った中に`'`が含まれるとHTML文法としてエラー(正しく解釈されない)になります.
|
|
8
8
|
```HTML
|
|
9
9
|
<div class="aaa" title="タイトル"a""></div>
|
|
10
10
|
<div class='aaa' title='タイトル'a''></div>
|
|
11
11
|
```
|
|
12
|
-
そのため, (母国語等の影響により)HTML内に頻繁に`'`が現れる可能性がある場合`"`で囲うことが推奨されることもあります. またPHP等の処理言語によっては`"`と`'`を使い分けるものもあり, その場合はまた条件が変わってきます.
|
|
12
|
+
そのため, (英語といった母国語等の影響により)HTML内に頻繁に`'`が現れる可能性がある場合, `"`で囲うことが推奨されることもあります. またPHP等の処理言語によっては`"`と`'`を使い分けるものもあり, その場合はまた条件が変わってきます.
|
|
13
13
|
|
|
14
14
|
NOTE:
|
|
15
|
-
HTMLには文字の**実体(エンティティ)参照**と呼
|
|
15
|
+
HTMLには文字の**実体(エンティティ)参照**と呼ばれる仕組みもあり, `"`を`"`と, `'`を`'`(39は`'`の文字コード)として表すことも出来ます. 従って, 先ほどのコードを
|
|
16
16
|
```HTML
|
|
17
17
|
<div class="aaa" title="タイトル"a""></div>
|
|
18
18
|
<div class='aaa' title='タイトル'a''></div>
|
|
19
19
|
```
|
|
20
|
-
と書き換えることもで
|
|
20
|
+
と書き換えることで`"`内に正しく「`"`文字」を挿入するすることも可能です.
|
|
21
21
|
|
|
22
22
|
---
|
|
23
|
-
さてこのHTMLコードをjQuery等
|
|
23
|
+
さてこのHTMLコードをjQuery等で使う文字列として扱うことを考えましょう. JavaScriptでは`"`か`'`のどちらかで囲ったコードを文字列リテラルとして扱います. 従って次のコードは正しい内容です.
|
|
24
24
|
|
|
25
25
|
```JavaScript
|
|
26
26
|
a.after('<div class="aaa"></div>');
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
a.after('<div class='aaa'></div>');
|
|
33
33
|
a.after("<div class="aaa"></div>");
|
|
34
34
|
```
|
|
35
|
-
今度はJavaScriptとしての文字列の範囲が曖昧となりエラーとなります. この場合, 文字列内部の`"`と`'`とを`\`でエスケープすると正しい内容となります.
|
|
35
|
+
となり, 今度はJavaScriptとしての文字列の範囲が曖昧となりエラーとなります. この場合, 文字列内部の`"`と`'`とを`\`でエスケープすると正しい内容となります.
|
|
36
36
|
|
|
37
37
|
```JavaScript
|
|
38
38
|
a.after('<div class=\'aaa\'></div>');
|
2
文字エンティティ参照・ユニコードによるエスケープについてのメモを追加
answer
CHANGED
|
@@ -11,6 +11,14 @@
|
|
|
11
11
|
```
|
|
12
12
|
そのため, (母国語等の影響により)HTML内に頻繁に`'`が現れる可能性がある場合`"`で囲うことが推奨されることもあります. またPHP等の処理言語によっては`"`と`'`を使い分けるものもあり, その場合はまた条件が変わってきます.
|
|
13
13
|
|
|
14
|
+
NOTE:
|
|
15
|
+
HTMLには文字の**実体(エンティティ)参照**と呼ぶ仕組みも備えており, `"`を`"`と, `'`を`'`(39は`'`の文字コード)として表すことも出来ます. 従って, 先ほどのコードを
|
|
16
|
+
```HTML
|
|
17
|
+
<div class="aaa" title="タイトル"a""></div>
|
|
18
|
+
<div class='aaa' title='タイトル'a''></div>
|
|
19
|
+
```
|
|
20
|
+
と書き換えることもできます.
|
|
21
|
+
|
|
14
22
|
---
|
|
15
23
|
さてこのHTMLコードをjQuery等により文字列として扱うことを考えましょう. JavaScriptでは`"`か`'`のどちらかで囲ったコードを文字列リテラルとして扱います. 従って次のコードは正しい内容です.
|
|
16
24
|
|
|
@@ -29,4 +37,7 @@
|
|
|
29
37
|
```JavaScript
|
|
30
38
|
a.after('<div class=\'aaa\'></div>');
|
|
31
39
|
a.after("<div class=\"aaa\"></div>");
|
|
32
|
-
```
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
NOTE:
|
|
43
|
+
JavaScriptにもHTMLと同様に文字を文字コードで挿入する方法(`\uXXXX`)があります.
|
1
回答文修正
answer
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
そのため, (母国語等の影響により)HTML内に頻繁に`'`が現れる可能性がある場合`"`で囲うことが推奨されることもあります. またPHP等の処理言語によっては`"`と`'`を使い分けるものもあり, その場合はまた条件が変わってきます.
|
|
13
13
|
|
|
14
14
|
---
|
|
15
|
-
さてこのHTMLコードをjQuery等
|
|
15
|
+
さてこのHTMLコードをjQuery等により文字列として扱うことを考えましょう. JavaScriptでは`"`か`'`のどちらかで囲ったコードを文字列リテラルとして扱います. 従って次のコードは正しい内容です.
|
|
16
16
|
|
|
17
17
|
```JavaScript
|
|
18
18
|
a.after('<div class="aaa"></div>');
|