1:まとめらいぶ 2021/04/07(水) 18:24:58.25 0
Javascript Logic

no title

引用元: 「プログラマならこの画像の面白さすぐ理解できる」て聞いたんだけど俺プログラマなのに理解できんかった

(C)2015 - 2021 まとめらいぶ

8:まとめらいぶ 2021/04/07(水) 18:39:50.49 0
>>1
スクリプト言語では型が動的で自動キャストされるものも多い
さらに演算子は型ごとにオーバーロードされる
その自動キャストで型がどう引っ張られるかの醍醐味
状況はプログラミング言語毎に異なる

5:まとめらいぶ 2021/04/07(水) 18:35:48.13 0
おもろいやん

6:まとめらいぶ 2021/04/07(水) 18:37:42.69 0
プログラマじゃないからわからない

9:まとめらいぶ 2021/04/07(水) 18:42:01.61 0
これの正解って"156"だけどな

11:まとめらいぶ 2021/04/07(水) 18:44:18.91 0
>>9
だよね
ポイントは
・演算子の左右結合優先度
・演算子のオーバーロード適用時の自動キャスト優先度

12:まとめらいぶ 2021/04/07(水) 18:47:28.77 0
JavaScriptなんだし別に演算子をオーバーロードしてるわけじゃない

14:まとめらいぶ 2021/04/07(水) 18:49:48.38 0
>>12
しています
例えばperlだと「.」を迂闊にも贅沢に文字列結合演算子に割り当てているので
「+」はオーバーロードされず数値和演算子に専用に用いられているため
文字列が数値へ自動キャストされて「21」となってくれるが「.」の使い方がもったいないよね

17:まとめらいぶ 2021/04/07(水) 18:52:54.19 0
爆笑したわwww