回答編集履歴

7

dataから作る方法も追記

2022/10/06 04:10

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -27,3 +27,10 @@
27
27
  [ '沖縄県', '女性', 155 ]
28
28
  ]
29
29
  ```
30
+
31
+ dataから作ることもできます。
32
+
33
+ ```js
34
+ const copydata = data.flatMap((d, i) => Array(copynums[i]).fill().map(() => [...d]));
35
+ ```
36
+

6

constに変更

2022/10/05 17:31

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -2,14 +2,14 @@
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js
5
- let data =[
5
+ const data =[
6
6
  [ '北海道', '男性', 185 ],
7
7
  [ '東京都', '男性', 168 ],
8
8
  [ '沖縄県', '女性', 155 ]
9
9
  ];
10
- let copynums = [2,5,3];
10
+ const copynums = [2,5,3];
11
11
 
12
- let copydata = copynums.flatMap((n, i) => Array(n).fill().map(() => [...data[i]]));
12
+ const copydata = copynums.flatMap((n, i) => Array(n).fill().map(() => [...data[i]]));
13
13
  console.log(copydata);
14
14
  ```
15
15
 

5

ゴミ文字削除

2022/10/05 17:30

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -2,7 +2,7 @@
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js
5
- let data =[mo588:~/qiita$
5
+ let data =[
6
6
  [ '北海道', '男性', 185 ],
7
7
  [ '東京都', '男性', 168 ],
8
8
  [ '沖縄県', '女性', 155 ]

4

説明変更

2022/10/05 16:27

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,4 +1,4 @@
1
- 要素数をflatMapして指定要素数のArrayを作り、dataから要素をコピーするといいです。
1
+ copynum値毎に空Arrayを作り、Array毎にdata要素をコピーして、flatMapで平坦な配列にするのがよさそうです。
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js

3

変数名変更

2022/10/05 16:20

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -2,15 +2,15 @@
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js
5
- let data =[
5
+ let data =[mo588:~/qiita$
6
- [ '北海道', '男性', 185 ],
6
+ [ '北海道', '男性', 185 ],
7
- [ '東京都', '男性', 168 ],
7
+ [ '東京都', '男性', 168 ],
8
- [ '沖縄県', '女性', 155 ]
8
+ [ '沖縄県', '女性', 155 ]
9
9
  ];
10
10
  let copynums = [2,5,3];
11
11
 
12
- let expand = copynums.flatMap((n, i) => Array(n).fill().map(() => [...data[i]]));
12
+ let copydata = copynums.flatMap((n, i) => Array(n).fill().map(() => [...data[i]]));
13
- console.log(expand);
13
+ console.log(copydata);
14
14
  ```
15
15
 
16
16
  ```text:実行結果

2

実行結果追記

2022/10/05 13:18

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,4 +1,4 @@
1
- 要素数をmapして指定要素数の配列を作り、dataから要素をコピーするといいです。
1
+ 要素数をflatMapして指定要素数のArrayを作り、dataから要素をコピーするといいです。
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js
@@ -13,3 +13,17 @@
13
13
  console.log(expand);
14
14
  ```
15
15
 
16
+ ```text:実行結果
17
+ [
18
+ [ '北海道', '男性', 185 ],
19
+ [ '北海道', '男性', 185 ],
20
+ [ '東京都', '男性', 168 ],
21
+ [ '東京都', '男性', 168 ],
22
+ [ '東京都', '男性', 168 ],
23
+ [ '東京都', '男性', 168 ],
24
+ [ '東京都', '男性', 168 ],
25
+ [ '沖縄県', '女性', 155 ],
26
+ [ '沖縄県', '女性', 155 ],
27
+ [ '沖縄県', '女性', 155 ]
28
+ ]
29
+ ```

1

冗長表現訂正

2022/10/05 13:16

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,4 +1,4 @@
1
- 要素数をmapして指定要素数の配列を作り、dataから要素をコピーして要素にするといいです。
1
+ 要素数をmapして指定要素数の配列を作り、dataから要素をコピーするといいです。
2
2
  ちなみに、dataは複数形、datamが単数形です。
3
3
 
4
4
  ```js