回答編集履歴

4

追記3

2022/10/01 03:38

投稿

退会済みユーザー
test CHANGED
@@ -38,4 +38,13 @@
38
38
  - append に渡す第二引数のオブジェクトリテラルの `text : text` はコロン以降の `: text` が不要で `text` のみに省略できます。
39
39
 
40
40
 
41
+ ### 追記3
41
42
 
43
+ テンプレートリテラルを入れ子にしなくても色々やりようはあるということで、こんなのもアリかもしれません。
44
+ ```javascript
45
+ $.each(param, function(index, text) {
46
+ const id = ['param', `${index + 1}`.padStart(3, '0')].join('-');
47
+ $('div').append($('<p>', { id, text }));
48
+ });
49
+ ```
50
+

3

追記2

2022/10/01 03:17

投稿

退会済みユーザー
test CHANGED
@@ -20,3 +20,22 @@
20
20
  ```
21
21
  - codepen 👉 https://codepen.io/su507/pen/OJZvdxR?editors=0012
22
22
 
23
+
24
+ ### 追記2
25
+
26
+ テンプレートリテラルを入れ子にできるか?という質問に対しては「できる」が答えになりますがコードが若干読みにくくなることは否めません。今回の場合は以下のようにするのもよいかと思います。
27
+
28
+ ```javascript
29
+ $.each(param, function(index, text) {
30
+ const id = `${index + 1}`.padStart(3, '0');
31
+ $('div').append($('<p>', { id: `param-${id}`, text }));
32
+ });
33
+ ```
34
+ - codepen 👉 https://codepen.io/su507/pen/bGMvyLq?editors=0010
35
+
36
+ 上記のように、
37
+ - ある文字列が指定する長さに足りないときに先頭から指定文字列で埋めたいときは [padStart](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/padStart) メソッドが便利です。
38
+ - append に渡す第二引数のオブジェクトリテラルの `text : text` はコロン以降の `: text` が不要で `text` のみに省略できます。
39
+
40
+
41
+

2

追記

2022/09/30 15:34

投稿

退会済みユーザー
test CHANGED
@@ -6,7 +6,17 @@
6
6
  const tagId = `${param}-${`000${index + 1}`.slice(-3)}`;
7
7
  console.log(tagId); // => "ID-046"
8
8
  ```
9
- - codepen 👉 https://codepen.io/su507/pen/OJZvwXz?editors=0012
9
+
10
10
 
11
11
  - MDN: JavaScript リファレンス- [入れ子のテンプレート](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Template_literals#%E5%85%A5%E3%82%8C%E5%AD%90%E3%81%AE%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88)
12
12
 
13
+
14
+ ### 追記
15
+
16
+ 以下のように修正するとよいでしょう:
17
+ ```diff
18
+ - const tagId = 'param-' + ('000' + (index + 1)).slice(-3); // 疑問の箇所
19
+ + const tagId = `param-${`000${index + 1}`.slice(-3)}`;
20
+ ```
21
+ - codepen 👉 https://codepen.io/su507/pen/OJZvdxR?editors=0012
22
+

1

テキスト追加

2022/09/30 11:24

投稿

退会済みユーザー
test CHANGED
@@ -6,5 +6,7 @@
6
6
  const tagId = `${param}-${`000${index + 1}`.slice(-3)}`;
7
7
  console.log(tagId); // => "ID-046"
8
8
  ```
9
- 👉 https://codepen.io/su507/pen/OJZvwXz?editors=0012
9
+ - codepen 👉 https://codepen.io/su507/pen/OJZvwXz?editors=0012
10
10
 
11
+ - MDN: JavaScript リファレンス- [入れ子のテンプレート](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Template_literals#%E5%85%A5%E3%82%8C%E5%AD%90%E3%81%AE%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88)
12
+