質問編集履歴
3
書き直し。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
運賃検索のプログラムを作っています。例えば、中百舌鳥駅と深井駅を選択の順番を入れ替えても結果を同じにしたいです。
|
2
2
|
独自調査の結果、文字でやるより、数字でやったほうがsort関数が機能して、小さいもの順になって、挙動を同じにしやすいということが分かったので、文字→数字に変更しました。
|
3
|
-
|
3
|
+
そのsort関数を使った場合、
|
4
4
|
const vals = {
|
5
|
-
'sb1sb2':3.7,
|
5
|
+
'sb01sb02':3.7,
|
6
6
|
'nakamozuizumigaoka':7.8,
|
7
7
|
'a0b0': 1.2,
|
8
8
|
'a0b1': 12,
|
@@ -17,6 +17,16 @@
|
|
17
17
|
この挙動が動くようにしていただきたいです。
|
18
18
|
要するに関数を使用した後に関数を使用することはできないかということです。
|
19
19
|
それって今のプログラミングではできないのでしょうか。お力添えをいただきたいです。
|
20
|
+
それが無理なら、
|
21
|
+
const vals = {
|
22
|
+
'sb01sb02':3.7,
|
23
|
+
'nakamozuizumigaoka':7.8,
|
24
|
+
'a0b0': 1.2,
|
25
|
+
'a0b1': 12,
|
26
|
+
'a0b2': 28.8,
|
27
|
+
},の'sb1sb2':3.7,の部分で、二度書きにならないようにする方法を試したいのです。
|
28
|
+
自分は、'sb01sb02'&'sb02sb01'や、&を二度書き連ねた方法、=をつなげた方法、二度書き連ねた方法などやってみましたが駄目でした。
|
29
|
+
も泣き寝入りです。
|
20
30
|
<!DOCTYPE html>
|
21
31
|
<meta charset="utf-8">
|
22
32
|
<title></title>
|
@@ -66,3 +76,5 @@
|
|
66
76
|
|
67
77
|
A.addEventListener('change',_=>f(vals[B.value+C.value]));
|
68
78
|
</script>
|
79
|
+
例えば起点駅を0として、ほかの駅に数字を張っておくとか、中百舌鳥~深井間をifで、最初に距離を与えておくとかいらないです。
|
80
|
+
|
2
書き直してわかりやすくした。
test
CHANGED
File without changes
|
test
CHANGED
@@ -15,6 +15,7 @@
|
|
15
15
|
|
16
16
|
A.addEventListener('change',_=>f(vals[B.value+C.value]));
|
17
17
|
この挙動が動くようにしていただきたいです。
|
18
|
+
要するに関数を使用した後に関数を使用することはできないかということです。
|
18
19
|
それって今のプログラミングではできないのでしょうか。お力添えをいただきたいです。
|
19
20
|
<!DOCTYPE html>
|
20
21
|
<meta charset="utf-8">
|
1
わかりやすくした。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
運賃検索のプログラムを作っています。例えば、中百舌鳥駅と深井駅を選択の順番を入れ替えても結果を同じにしたいです。
|
2
2
|
独自調査の結果、文字でやるより、数字でやったほうがsort関数が機能して、小さいもの順になって、挙動を同じにしやすいということが分かったので、文字→数字に変更しました。
|
3
|
-
|
3
|
+
やっていただきたいのは、まず、値をソート関数で、sb01とsb02、sb02とsb01をソートして、重複チェックした後に、
|
4
4
|
const vals = {
|
5
5
|
'sb1sb2':3.7,
|
6
6
|
'nakamozuizumigaoka':7.8,
|
@@ -8,9 +8,14 @@
|
|
8
8
|
'a0b1': 12,
|
9
9
|
'a0b2': 28.8,
|
10
10
|
},
|
11
|
+
|
11
|
-
|
12
|
+
len = [ 3, 6, 15, 30, 50],
|
12
|
-
|
13
|
+
prc = [140,160, 200, 250, 500],
|
14
|
+
f=(_,l=Math.round(_))=>D.textContent=l?prc[len.findIndex(_=>_>l)]+'円':'';
|
15
|
+
|
16
|
+
A.addEventListener('change',_=>f(vals[B.value+C.value]));
|
13
|
-
|
17
|
+
この挙動が動くようにしていただきたいです。
|
18
|
+
それって今のプログラミングではできないのでしょうか。お力添えをいただきたいです。
|
14
19
|
<!DOCTYPE html>
|
15
20
|
<meta charset="utf-8">
|
16
21
|
<title></title>
|