質問編集履歴

24

修正

2021/07/09 12:42

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -140,7 +140,7 @@
140
140
 
141
141
  ```javascript
142
142
 
143
- // 先にdraggedRowDataの順番とorderを入れ替えした。サンプルのためコードは省略
143
+ // 先にdraggedRowDataの順番とorderを入れ替えした。サンプルのため直接配列を書いてます。
144
144
 
145
145
  let draggedRowData = [
146
146
 

23

修正

2021/07/09 12:42

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -152,7 +152,7 @@
152
152
 
153
153
 
154
154
 
155
- let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
155
+ let mergedRowData = tempRowData.reduce((accumulator, currentValue) => {
156
156
 
157
157
  let rData = draggedRowData.find((e) => e.id === currentValue.id);
158
158
 

22

修正

2021/07/09 12:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -128,7 +128,7 @@
128
128
 
129
129
 
130
130
 
131
- draggedRowDataをsort、再連番て、
131
+ 先にdraggedRowDataの順番とorderを入れ替えた。
132
132
 
133
133
  reduceを修正して、reduce処理後に、sort、再連番して、期待する結果になりました、少し冗長になってしまったかもしれません。
134
134
 

21

訂正

2021/07/09 12:39

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -196,7 +196,7 @@
196
196
 
197
197
  [
198
198
 
199
- { id: 2, text: 'TEST2', order: 1, isDeleted: false },
199
+ { id: 2, text: 'TEST4', order: 1, isDeleted: false },
200
200
 
201
201
  { id: 1, text: 'TEST1', order: 2, isDeleted: false },
202
202
 

20

修正

2021/07/09 12:39

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -48,7 +48,7 @@
48
48
 
49
49
  {id: 1, text: "TEST1", order: 2, isDeleted: false},
50
50
 
51
- {id: 2, text: "TEST2", order: 1, isDeleted: false}
51
+ {id: 2, text: "TEST4", order: 1, isDeleted: false}
52
52
 
53
53
  ];
54
54
 
@@ -110,6 +110,92 @@
110
110
 
111
111
  [
112
112
 
113
+ { id: 2, text: 'TEST4', order: 1, isDeleted: false },
114
+
115
+ { id: 1, text: 'TEST1', order: 2, isDeleted: false },
116
+
117
+ { id: 3, text: 'TEST3', order: 3, isDeleted: true }
118
+
119
+ ]
120
+
121
+ */
122
+
123
+ ```
124
+
125
+
126
+
127
+ 追記
128
+
129
+
130
+
131
+ draggedRowDataをsort、再連番して、
132
+
133
+ reduceを修正して、reduce処理後に、sort、再連番して、期待する結果になりました、少し冗長になってしまったかもしれません。
134
+
135
+
136
+
137
+ もう少し効率の良いやりかたがあれば。
138
+
139
+
140
+
141
+ ```javascript
142
+
143
+ // 先にdraggedRowDataの順番とorderを入れ替えした。サンプルのためコードは省略
144
+
145
+ let draggedRowData = [
146
+
147
+ {id: 2, text: "TEST4", order: 1, isDeleted: false}
148
+
149
+ {id: 1, text: "TEST1", order: 2, isDeleted: false},
150
+
151
+ ];
152
+
153
+
154
+
155
+ let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
156
+
157
+ let rData = draggedRowData.find((e) => e.id === currentValue.id);
158
+
159
+ accumulator.push(rData ? rData : currentValue);
160
+
161
+ return accumulator;
162
+
163
+ }, []);
164
+
165
+
166
+
167
+ // orderでソート
168
+
169
+ mergedRowData.sort((a, b) => {
170
+
171
+ return a.order - b.order;
172
+
173
+ });
174
+
175
+
176
+
177
+ // 再連番
178
+
179
+ mergedRowData.forEach((currentValue, index) => {
180
+
181
+ currentValue.order = index + 1;
182
+
183
+ });
184
+
185
+
186
+
187
+ tempRowData = mergedRowData;
188
+
189
+ console.log(tempRowData);
190
+
191
+
192
+
193
+ /*
194
+
195
+ 結果
196
+
197
+ [
198
+
113
199
  { id: 2, text: 'TEST2', order: 1, isDeleted: false },
114
200
 
115
201
  { id: 1, text: 'TEST1', order: 2, isDeleted: false },
@@ -121,89 +207,3 @@
121
207
  */
122
208
 
123
209
  ```
124
-
125
-
126
-
127
- 追記
128
-
129
-
130
-
131
- draggedRowDataをsort、再連番して、
132
-
133
- reduceを修正して、reduce処理後に、sort、再連番して、期待する結果になりました、少し冗長になってしまったかもしれません。
134
-
135
-
136
-
137
- もう少し効率の良いやりかたがあれば。
138
-
139
-
140
-
141
- ```javascript
142
-
143
- // 先にdraggedRowDataの順番とorderを入れ替えした。サンプルのためコードは省略
144
-
145
- let draggedRowData = [
146
-
147
- {id: 2, text: "TEST2", order: 1, isDeleted: false}
148
-
149
- {id: 1, text: "TEST1", order: 2, isDeleted: false},
150
-
151
- ];
152
-
153
-
154
-
155
- let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
156
-
157
- let rData = draggedRowData.find((e) => e.id === currentValue.id);
158
-
159
- accumulator.push(rData ? rData : currentValue);
160
-
161
- return accumulator;
162
-
163
- }, []);
164
-
165
-
166
-
167
- // orderでソート
168
-
169
- mergedRowData.sort((a, b) => {
170
-
171
- return a.order - b.order;
172
-
173
- });
174
-
175
-
176
-
177
- // 再連番
178
-
179
- mergedRowData.forEach((currentValue, index) => {
180
-
181
- currentValue.order = index + 1;
182
-
183
- });
184
-
185
-
186
-
187
- tempRowData = mergedRowData;
188
-
189
- console.log(tempRowData);
190
-
191
-
192
-
193
- /*
194
-
195
- 結果
196
-
197
- [
198
-
199
- { id: 2, text: 'TEST2', order: 1, isDeleted: false },
200
-
201
- { id: 1, text: 'TEST1', order: 2, isDeleted: false },
202
-
203
- { id: 3, text: 'TEST3', order: 3, isDeleted: true }
204
-
205
- ]
206
-
207
- */
208
-
209
- ```

19

修正

2021/07/09 12:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -140,42 +140,18 @@
140
140
 
141
141
  ```javascript
142
142
 
143
+ // 先にdraggedRowDataの順番とorderを入れ替えした。サンプルのためコードは省略
144
+
143
- let tempRowData = [
145
+ let draggedRowData = [
146
+
144
-
147
+ {id: 2, text: "TEST2", order: 1, isDeleted: false}
148
+
145
- {id: 1, text: "TEST1", order: 1, isDeleted: false},
149
+ {id: 1, text: "TEST1", order: 2, isDeleted: false},
146
-
147
- {id: 2, text: "TEST2", order: 2, isDeleted: false},
148
-
149
- {id: 3, text: "TEST3", order: 3, isDeleted: true}
150
150
 
151
151
  ];
152
152
 
153
153
 
154
154
 
155
- let draggedRowData = [
156
-
157
- {id: 1, text: "TEST1", order: 2, isDeleted: false},
158
-
159
- {id: 2, text: "TEST2", order: 1, isDeleted: false}
160
-
161
- ];
162
-
163
-
164
-
165
- // 先にdraggedRowDataのorderを再連番した
166
-
167
- // サンプルのため、そのまま変数に入れてます。
168
-
169
- draggedRowData = [
170
-
171
- {id: 2, text: "TEST2", order: 1, isDeleted: false}
172
-
173
- {id: 1, text: "TEST1", order: 2, isDeleted: false},
174
-
175
- ];
176
-
177
-
178
-
179
155
  let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
180
156
 
181
157
  let rData = draggedRowData.find((e) => e.id === currentValue.id);

18

修正

2021/07/09 12:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -164,7 +164,33 @@
164
164
 
165
165
  // 先にdraggedRowDataのorderを再連番した
166
166
 
167
+ // サンプルのため、そのまま変数に入れてます。
168
+
169
+ draggedRowData = [
170
+
171
+ {id: 2, text: "TEST2", order: 1, isDeleted: false}
172
+
173
+ {id: 1, text: "TEST1", order: 2, isDeleted: false},
174
+
175
+ ];
176
+
177
+
178
+
179
+ let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
180
+
181
+ let rData = draggedRowData.find((e) => e.id === currentValue.id);
182
+
183
+ accumulator.push(rData ? rData : currentValue);
184
+
185
+ return accumulator;
186
+
187
+ }, []);
188
+
189
+
190
+
191
+ // orderでソート
192
+
167
- draggedRowData.sort((a, b) => {
193
+ mergedRowData.sort((a, b) => {
168
194
 
169
195
  return a.order - b.order;
170
196
 
@@ -172,7 +198,9 @@
172
198
 
173
199
 
174
200
 
201
+ // 再連番
202
+
175
- draggedRowData.forEach((currentValue, index) => {
203
+ mergedRowData.forEach((currentValue, index) => {
176
204
 
177
205
  currentValue.order = index + 1;
178
206
 
@@ -180,38 +208,6 @@
180
208
 
181
209
 
182
210
 
183
- let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
184
-
185
- let rData = draggedRowData.find((e) => e.id === currentValue.id);
186
-
187
- accumulator.push(rData ? rData : currentValue);
188
-
189
- return accumulator;
190
-
191
- }, []);
192
-
193
-
194
-
195
- // orderでソート
196
-
197
- mergedRowData.sort((a, b) => {
198
-
199
- return a.order - b.order;
200
-
201
- });
202
-
203
-
204
-
205
- // 再連番
206
-
207
- mergedRowData.forEach((currentValue, index) => {
208
-
209
- currentValue.order = index + 1;
210
-
211
- });
212
-
213
-
214
-
215
211
  tempRowData = mergedRowData;
216
212
 
217
213
  console.log(tempRowData);

17

修正

2021/07/09 12:36

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -172,7 +172,7 @@
172
172
 
173
173
 
174
174
 
175
- let draggedRowData.forEach((currentValue, index) => {
175
+ draggedRowData.forEach((currentValue, index) => {
176
176
 
177
177
  currentValue.order = index + 1;
178
178
 

16

修正

2021/07/09 12:34

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -128,6 +128,8 @@
128
128
 
129
129
 
130
130
 
131
+ draggedRowDataをsort、再連番して、
132
+
131
133
  reduceを修正して、reduce処理後に、sort、再連番して、期待する結果になりました、少し冗長になってしまったかもしれません。
132
134
 
133
135
 

15

修正

2021/07/09 12:34

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -160,25 +160,29 @@
160
160
 
161
161
 
162
162
 
163
+ // 先にdraggedRowDataのorderを再連番した
164
+
165
+ draggedRowData.sort((a, b) => {
166
+
167
+ return a.order - b.order;
168
+
169
+ });
170
+
171
+
172
+
173
+ let draggedRowData.forEach((currentValue, index) => {
174
+
175
+ currentValue.order = index + 1;
176
+
177
+ });
178
+
179
+
180
+
163
181
  let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
164
182
 
165
183
  let rData = draggedRowData.find((e) => e.id === currentValue.id);
166
184
 
167
-
168
-
169
- if (rData) {
170
-
171
- accumulator.push(rData);
172
-
173
- } else {
174
-
175
- currentValue.order = index + 1;
176
-
177
- accumulator.push(currentValue);
185
+ accumulator.push(rData ? rData : currentValue);
178
-
179
- }
180
-
181
-
182
186
 
183
187
  return accumulator;
184
188
 

14

修正

2021/07/09 12:33

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -121,3 +121,111 @@
121
121
  */
122
122
 
123
123
  ```
124
+
125
+
126
+
127
+ 追記
128
+
129
+
130
+
131
+ reduceを修正して、reduce処理後に、sort、再連番して、期待する結果になりました、少し冗長になってしまったかもしれません。
132
+
133
+
134
+
135
+ もう少し効率の良いやりかたがあれば。
136
+
137
+
138
+
139
+ ```javascript
140
+
141
+ let tempRowData = [
142
+
143
+ {id: 1, text: "TEST1", order: 1, isDeleted: false},
144
+
145
+ {id: 2, text: "TEST2", order: 2, isDeleted: false},
146
+
147
+ {id: 3, text: "TEST3", order: 3, isDeleted: true}
148
+
149
+ ];
150
+
151
+
152
+
153
+ let draggedRowData = [
154
+
155
+ {id: 1, text: "TEST1", order: 2, isDeleted: false},
156
+
157
+ {id: 2, text: "TEST2", order: 1, isDeleted: false}
158
+
159
+ ];
160
+
161
+
162
+
163
+ let mergedRowData = tempRowData.reduce((accumulator, currentValue, index) => {
164
+
165
+ let rData = draggedRowData.find((e) => e.id === currentValue.id);
166
+
167
+
168
+
169
+ if (rData) {
170
+
171
+ accumulator.push(rData);
172
+
173
+ } else {
174
+
175
+ currentValue.order = index + 1;
176
+
177
+ accumulator.push(currentValue);
178
+
179
+ }
180
+
181
+
182
+
183
+ return accumulator;
184
+
185
+ }, []);
186
+
187
+
188
+
189
+ // orderでソート
190
+
191
+ mergedRowData.sort((a, b) => {
192
+
193
+ return a.order - b.order;
194
+
195
+ });
196
+
197
+
198
+
199
+ // 再連番
200
+
201
+ mergedRowData.forEach((currentValue, index) => {
202
+
203
+ currentValue.order = index + 1;
204
+
205
+ });
206
+
207
+
208
+
209
+ tempRowData = mergedRowData;
210
+
211
+ console.log(tempRowData);
212
+
213
+
214
+
215
+ /*
216
+
217
+ 結果
218
+
219
+ [
220
+
221
+ { id: 2, text: 'TEST2', order: 1, isDeleted: false },
222
+
223
+ { id: 1, text: 'TEST1', order: 2, isDeleted: false },
224
+
225
+ { id: 3, text: 'TEST3', order: 3, isDeleted: true }
226
+
227
+ ]
228
+
229
+ */
230
+
231
+ ```

13

修正

2021/07/09 12:28

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -54,7 +54,7 @@
54
54
 
55
55
 
56
56
 
57
- const mergedData = tempRowData.reduce((accumulator, currentValue) => {
57
+ const mergedRowData = tempRowData.reduce((accumulator, currentValue) => {
58
58
 
59
59
  let rData = draggedRowData.find((r) => r.id === currentValue.id );
60
60
 
@@ -84,7 +84,7 @@
84
84
 
85
85
 
86
86
 
87
- tempRowData = mergedData;
87
+ tempRowData = mergedRowData;
88
88
 
89
89
  console.log(tempRowData);
90
90
 

12

修正

2021/07/09 12:20

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -56,7 +56,7 @@
56
56
 
57
57
  const mergedData = tempRowData.reduce((accumulator, currentValue) => {
58
58
 
59
- let rData = rowData.find((r) => r.id === currentValue.id );
59
+ let rData = draggedRowData.find((r) => r.id === currentValue.id );
60
60
 
61
61
 
62
62
 

11

修正

2021/07/09 12:14

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- javascriptで2つの配列を後の配列のorder優先でマージする方法を教えてください
1
+ javascriptで2つの配列を後の配列優先でマージする方法を教えてください
test CHANGED
@@ -1,4 +1,4 @@
1
- javascriptで2つの配列を後の配列のorder優先でマージする方法を教えてください
1
+ javascriptで2つの配列を後の配列優先でマージする方法を教えてください
2
2
 
3
3
 
4
4
 

10

修正

2021/07/09 12:06

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- javascriptでの配列のorderで、前の配列のorderを再構築する方法を教えてください
1
+ javascriptで2つの配列を後の配列のorder優先でマージする方法を教えてください
test CHANGED
@@ -1,4 +1,4 @@
1
- の配列のorderで、前の配列のorderを再構築する方法を教えてください
1
+ javascriptで2つの配列を後の配列のorder優先でマージする方法を教えてください
2
2
 
3
3
 
4
4
 
@@ -16,8 +16,6 @@
16
16
 
17
17
  draggedRowData <= tempRowData
18
18
 
19
- orderの変更時はその他のカラムデータは更新しない
20
-
21
19
 
22
20
 
23
21
  わかるかたいらっしゃいましたら、ご教授お願いします。
@@ -27,10 +25,6 @@
27
25
  下記のソースは2つの配列をマージしているのですが、tempRowData優先になっています。
28
26
 
29
27
  その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているから、tempRowDataの順番でdraggedRowDataを取得してしまうところまでわかっているのですが。
30
-
31
-
32
-
33
- tempRowDataにマージせず、orderのみを振りなおす必要があるかもしれません。
34
28
 
35
29
 
36
30
 

9

修正

2021/07/09 11:51

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  draggedRowData <= tempRowData
18
18
 
19
- orderの変更時はその他のデータは更新しない
19
+ orderの変更時はその他のカラムデータは更新しない
20
20
 
21
21
 
22
22
 

8

修正

2021/07/09 11:39

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
 
32
32
 
33
- tempRowDataにマージせず、orderを振りなおす必要あるかもしれません。
33
+ tempRowDataにマージせず、orderのみを振りなおす必要あるかもしれません。
34
34
 
35
35
 
36
36
 
@@ -61,8 +61,6 @@
61
61
 
62
62
 
63
63
  const mergedData = tempRowData.reduce((accumulator, currentValue) => {
64
-
65
- // この方法だと、tempRowDataが優先で、draggedRowDataが優先じゃなかった。
66
64
 
67
65
  let rData = rowData.find((r) => r.id === currentValue.id );
68
66
 

7

修正

2021/07/09 11:33

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- javascriptで2つ連想配列のマージを後の配列のデータ優先で行う方法を教えてください
1
+ javascriptでの配列のorderで、前の配列のorder再構築する方法を教えてください
test CHANGED
@@ -1,24 +1,36 @@
1
- javascriptで2つ連想配列のマージを後の配列のデータ優先で行う方法を教えてください
1
+ の配列のorderで、前の配列のorder再構築する方法を教えてください
2
2
 
3
3
 
4
4
 
5
5
  [javascriptで2つの連想配列のマージを効率良く実行する方法を教えて下さい。](https://teratail.com/questions/321600)
6
6
 
7
- から、2つの配列をマージをする方法で、順番を考えてプログラムを組まなければいけなくなったのですが、
7
+ から、2つの配列をマージをする方法で、順番を考える必要がでたのですが
8
8
 
9
9
 
10
10
 
11
- draggedRowData <= tempRowData 関係時、マージをdraggedData優先にする方法について、わかるかたらっしゃいしたら、
11
+ 後の配列のorderで、前配列orderを再構築をしたと考えています。
12
-
13
- ご教授お願いします。
14
12
 
15
13
 
16
14
 
15
+ (前提条件)
16
+
17
+ draggedRowData <= tempRowData
18
+
19
+ orderの変更時はその他のデータは更新しない
20
+
21
+
22
+
23
+ わかるかたいらっしゃいましたら、ご教授お願いします。
24
+
25
+
26
+
17
- 下記のソースはマージがtempRowData優先になっています。
27
+ 下記のソースは2つの配列をマージしているのですtempRowData優先になっています。
18
28
 
19
29
  その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているから、tempRowDataの順番でdraggedRowDataを取得してしまうところまでわかっているのですが。
20
30
 
31
+
32
+
21
- マージをdraggedRowData優先にする方法が知りたいです
33
+ tempRowDataにマージせず、orderを振りなお必要はあかもしれません
22
34
 
23
35
 
24
36
 

6

修正

2021/07/09 11:32

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているから、tempRowDataの順番でdraggedRowDataを取得してしまうところまでわかっているのですが。
20
20
 
21
- マージをdraggedData優先にする方法が知りたいです。
21
+ マージをdraggedRowData優先にする方法が知りたいです。
22
22
 
23
23
 
24
24
 

5

修正

2021/07/09 11:24

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  下記のソースはマージがtempRowData優先になっています。
18
18
 
19
- その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているからです。
19
+ その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているから、tempRowDataの順番draggedRowDataを取得してしまうところまでわかっているので
20
20
 
21
21
  マージをdraggedData優先にする方法が知りたいです。
22
22
 

4

修正

2021/07/09 11:22

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  下記のソースはマージがtempRowData優先になっています。
18
18
 
19
- その理由は find((e) => e.id === currentValue.id); を使っているからです。
19
+ その理由は draggedRowData.find((e) => e.id === currentValue.id); を使っているからです。
20
20
 
21
21
  マージをdraggedData優先にする方法が知りたいです。
22
22
 

3

修正

2021/07/09 11:20

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -14,7 +14,11 @@
14
14
 
15
15
 
16
16
 
17
- 下記のソースはマージがtempRowData優先になっています。マージをdraggedData優先にする方法が知りたいです。
17
+ 下記のソースはマージがtempRowData優先になっています。
18
+
19
+ その理由は find((e) => e.id === currentValue.id); を使っているからです。
20
+
21
+ マージをdraggedData優先にする方法が知りたいです。
18
22
 
19
23
 
20
24
 

2

修正

2021/07/09 11:20

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -98,7 +98,7 @@
98
98
 
99
99
 
100
100
 
101
- 表示したい方法
101
+ 取得したいデータ
102
102
 
103
103
  [
104
104
 

1

修正

2021/07/09 11:16

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -80,7 +80,25 @@
80
80
 
81
81
  console.log(tempRowData);
82
82
 
83
+
84
+
83
85
  /*
86
+
87
+ 現在
88
+
89
+ [
90
+
91
+ { id: 1, text: 'TEST1', order: 1, isDeleted: false },
92
+
93
+ { id: 2, text: 'TEST2', order: 2, isDeleted: false },
94
+
95
+ { id: 3, text: 'TEST3', order: 3, isDeleted: true }
96
+
97
+ ]
98
+
99
+
100
+
101
+ 表示したい方法
84
102
 
85
103
  [
86
104