回答編集履歴
2
質問の変更に合わせて追記
answer
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
yambejpさんのご回答にもあるように、正負で非対称なので条件式が含まれることになりそうです。
|
2
2
|
|
3
3
|
```js
|
4
|
-
|
5
4
|
let number = -10;
|
6
5
|
const images = ["img01", "img02", "img03", "img04", "img05"];
|
7
6
|
while (number < 20) console.log(number,
|
@@ -57,4 +56,17 @@
|
|
57
56
|
console.log(number,
|
58
57
|
images[Math.abs((Math.abs(number + images.length * Math.sign(Math.sign(++number))) - 1) % ((images.length - 1) * 2) - (images.length - 1))],
|
59
58
|
);
|
59
|
+
```
|
60
|
+
|
61
|
+
---
|
62
|
+
|
63
|
+
# 質問の変更に合わせて追記
|
64
|
+
|
65
|
+
```js
|
66
|
+
let number = -10;
|
67
|
+
const images = ["img01", "img02", "img03", "img04", "img05"];
|
68
|
+
while (number < 20)
|
69
|
+
console.log(number,
|
70
|
+
images[Math.abs((Math.abs(number++) + images.length - 1) % ((images.length - 1) * 2) - (images.length - 1))],
|
71
|
+
);
|
60
72
|
```
|
1
追記
answer
CHANGED
@@ -44,4 +44,17 @@
|
|
44
44
|
|
45
45
|
*/
|
46
46
|
|
47
|
+
```
|
48
|
+
|
49
|
+
---
|
50
|
+
|
51
|
+
# 追記
|
52
|
+
|
53
|
+
Math.sign を使って条件式を外してみましたが、かなり読みにくいコードになりました。
|
54
|
+
|
55
|
+
```js
|
56
|
+
while (number < 20)
|
57
|
+
console.log(number,
|
58
|
+
images[Math.abs((Math.abs(number + images.length * Math.sign(Math.sign(++number))) - 1) % ((images.length - 1) * 2) - (images.length - 1))],
|
59
|
+
);
|
47
60
|
```
|