字数制限上タイトルがおかしなことになっていますが、
要は、len~(__=C.value)]||vals[__+_]))]));の部分を条件分岐させたいのです。
javascriptのイベントが絡んでいるので、少しややこしいのですが、それは可能ですか。
以前、配列について、他の質問サイトで質問した際、配列自体に、配列を参照し、1つ目の配列から、~以上~未満の数を2つ目の配列でif関数のように参照して、結果を出すというシステムはなく、
イベントと組み合わさることによってそれがなされているものだと聞きました。
となると、ひょっとしてイベントも関わってくるのでしょうか。
どっちにせよ、これができるjsのプログラマーは日本に100人もいないと思います。
以下はそのjsの文です。
var
vals = {
'sb01sb02':3.7,
'sb01sb03':7.8,
'sb01sb04':10.2,
'sb01sb05':12.1,
'sb02sb03':4.1,
'sb02sb04':6.5,
'sb02sb05':8.4,
'sb03sb04':2.4,
'sb03sb05':4.3,
'sb04sb05':1.9,
'a0b0': 1.2,
'b0a0': 1.2,
'a0b1': 2.3,
'b1a0': 2.3,
},
len = [2,4,6,8,10,12,14,16],
prc = [[['定期券','170(90)'],['回数券','1,700(900)'],
['通勤_1か月','6,540(3,270)'],['3か月','18,640(9,320)'],['6か月','35,320(17,660)'],
['通学_1か月','3,030(1,520)'],['3か月','8,640(4,320)'],['6か月','16,370(8,190)'],],
[['定期券','190(100)'],['回数券','1,900(1,000)'],
['通勤_1か月','7,360(3,680)'],['3か月','20,980(10,490)'],['6か月','39,750(19,880)'],
['通学_1か月','3,400(1,700)'],['3か月','9,690(4,850)'],['6か月','18,360(9,180)'],],
[['定期券','210(110)'],['回数券','2,100(1,100)'],
['通勤_1か月','8,180(4,090)'],['3か月','23,320(11,660)'],['6か月','44,180(22,090)'],
['通学_1か月','3,780(1,890)'],['3か月','10,780(5,390)'],['6か月','20,420(10,210)'],],
[['定期券','230(120)'],['回数券','2,300(1,200)'],
['通勤_1か月','8,990(4,500)'],['3か月','25,630(12,820)'],['6か月','48,550(24,280)'],
['通学_1か月','4,160(2,080)'],['3か月','11,860(5,930)'],['6か月','22,470(11,240)'],],
[['定期券','250(130)'],['回数券','2,500(1,300)'],
['通勤_1か月','9,810(4,910)'],['3か月','27,960(13,980)'],['6か月','52,980(26,490)'],
['通学_1か月','4,530(2,270)'],['3か月','12,920(6,480)'],['6か月','24,470(12,240)'],],
[['定期券','270(140)'],['回数券','2,700(1,400)'],
['通勤_1か月','10,620(5,310)'],['3か月','30,270(15,140)'],['6か月','57,350(28,680)'],
['通学_1か月','4,910(2,460)'],['3か月','14,000(7,000)'],['6か月','26,520(13,280)'],],
[['定期券','290(150)'],['回数券','2,900(1,500)'],
['通勤_1か月','10,620(5,310)'],['3か月','30,270(15,140)'],['6か月','57,350(28,680)'],
['通学_1か月','5,290(2,650)'],['3か月','15,080(7,540)'],['6か月','28,570(14,290)'],],
[['定期券','210(110)'],['回数券','2,100(1,100)'],
['通勤_1か月','8,180(4,090)'],['3か月','23,320(11,660)'],['6か月','44,180(22,090)'],
['通学_1か月','3,780(1,890)'],['3か月','10,780(5,390)'],['6か月','20,420(10,210)']],],
T=(a,b=document.createElement('tbody'))=>
a.reduce((b,a)=>
(a.reduce((c,d)=>
(c.insertCell().append(d),c),b.insertRow()),b),b),
F=_=>
_&&T(_,D,R(D.childNodes)),
R=_=>
[..._].forEach (_=>
_.remove());
A.addEventListener('change',_=>
F(prc[len.findIndex($=>
$>Math.floor(vals[(_=B.value)+(__=C.value)]||vals[__+_]))]));
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
>A、Bとか名前がメチャメチャ
そうでしょうか?
重要なHTML要素には、出現順にA・B・C・Dとふり、
テーブル要素を構成する関数には、T。
change イベントが発生したら実行する関数(function)にはF。
リムーブしたい関数には、R
長さに、len
料金に、prc
今どき全角空白はエディタで簡単に置き換えられ、
難読化したプログラムでもインデントを付けて簡単に整形するツールがあり、
便利すぎる世の中です。
どのように自分のモノにするかは、理解しようとする側で創意工夫すべきです。
投稿には文字数制限が付きまといます。普段から短く書く訓練をしていないとある程度の規模のものを投稿したときに苦労します。
実のところそのような質問は少なかったです。(今後あっても私は答えませんけどね。)
それと過去に戯言だけ投稿すると運営側から苦情がくるので短くするプログラムも書いておきます。
F(prc[len.findIndex($=>$>(vals[(_=B.value)+(__=C.value)]||vals[__+_])|0)]));
No.3
- 回答日時:
No.2さん、質問者さん
失礼しました
でも最初から可読性の無いものを見せてしまったら解読したり崩すのにかなりの時間がかかってしまいます
しかもオブジェクトもA、Bとか名前がメチャメチャで追いにくいです
ここから修正出来たら良いですけど、それまでに違うやり方だったら3つ4つプログラムが作れそうな気がします
No.2
- 回答日時:
変数Fへの代入は下記のようにすべきです。
すでにこれだけで条件分岐してます。
F=_=>R(D.tBodies)||_&&T(_,D),
No1さん!
>まっさらな状態から作った方が
彼には才能があるそうです。
諦めろ!なんて決めつけない方が良いと思います。
質問者さんに失礼です。
がんばれ!
No.1
- 回答日時:
JavaScript専門のメンタの人なら可能かも知れません
これは、してやられましたね
素人じゃこの暗号は解けませんぞ!!
諦めてまっさらな状態から作った方が早いと思います
いきなりこんなマニアックな物から手を出しちゃいかんです
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1度きりではなく、繰り返し、挙動が変わるようにしていただきたいです。 1 2022/07/03 15:50
- JavaScript jsでは、'で区切った部分を改行することはできない。〇か×か。 1 2022/06/26 19:58
- 電車・路線・地下鉄 至急お願いします! 通勤定期券の払い戻しについて 11月〜4月までの6ヶ月分購入したのですが、4月分 5 2023/03/28 18:13
- 電車・路線・地下鉄 JR、定期券、継続購入した時、結局いつから使えるの? 2 2023/01/29 23:52
- 電子マネー・電子決済 新卒 定期の購入時期 6 2022/03/23 02:16
- 電車・路線・地下鉄 質問です 東武野田線の通学定期券が3月29日で切れるので、その14日前に3ヶ月分を継続して買いたいの 7 2023/03/11 16:36
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- 電車・路線・地下鉄 通勤定期、1ヶ月定期を買うメリット? 7 2023/03/16 14:46
- マッサージ・整体 値上げするから値上げ前に買ってという人 2 2023/04/12 16:02
- 電車・路線・地下鉄 近鉄の定期券と区間指定割引(学生) 2 2023/03/28 09:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#テキストボックスの文字を配...
-
同じIDで定義した要素の配列を...
-
二次元配列を使って順位をだす...
-
Javaについて質問です。 要素数...
-
javascript 配列 変数名「arra...
-
React hooksが値を返して配列変...
-
JavaScriptで2次元配列を扱う方法
-
二次元配列の全要素の全要素を...
-
Perlの配列をJavaScriptに渡せ...
-
jspからjavascriptの変数引継ぎ
-
JavaScriptにおける[] とか :...
-
配列の1要素を代入した変数を使...
-
Boolean型配列中のTrueの有無を...
-
JavaScript window.openで開く...
-
スマフォではボタンを表示させ...
-
ActiveXobjectが作成できない
-
javascriptで、表示されている...
-
関数でy=g(x)のgとは何の略です...
-
なぜmatchメソッドがエラーにな...
-
gas スプレッドシートがアクテ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
同じIDで定義した要素の配列を...
-
C#テキストボックスの文字を配...
-
React hooksが値を返して配列変...
-
オブジェクトから任意のプロパ...
-
javascript 変数名の連結をしたい
-
jspからjavascriptの変数引継ぎ
-
配列の1要素を代入した変数を使...
-
JavaScriptにおける[] とか :...
-
フォーム入力値の重複チェック
-
javascriptで行を抽出したいです。
-
undefinedを表示させない方法は...
-
javascriptで2つのArrayの...
-
WSH(Jscript)でファイル一覧
-
JavaScriptでの動的な多次元配...
-
Perlの配列をJavaScriptに渡せ...
-
[JS] setAttributeで保存される...
-
JSONデータを50音順でソートしたい
-
二次元配列の全要素の全要素を...
-
javascriptを用いて作成された...
-
バナーのランダム表示(複数、...
おすすめ情報