アカウント名:
パスワード:
JavaScript, PHP, Visual Basic, C, MySQL…とかく型変換は珍妙なルールが多くて混乱する。
そうなんだよねPHPの 0 == "yes" がtrueになるのはのけぞった
プログラム言語の「暗黙のXXX」はほぼ全てが地雷。というか、プログラムは、暗黙を明示するのが目的なんだよな。そもそも。
それは頭が硬すぎる
そういう人はコードをつなぎかえてプログラミングでもやっていればよろしい。
そもそもでいうなら、プログラムの技術というのは全ての暗黙を明示するのが人間には無理だし無駄だから発達したんですよ。
まあ言語仕様をちゃんと分かってしまえば「明示的」になるわけだし、明示的にしたければ明示的にも書けるわけで、まあ確かにうっかりミスで分かりにくいエラーが出ることもあるけど、それよりは利便性が上回ってるかなと思う。
そうかもしれないが、PHPの “0” (文字列の0) が論理式の文脈で偽に評価されるのはひどいと思う。
% php -r "echo('0' ? 1 : 0);"0
別に酷くはない。「空文字やnullなどでないかどうか」という判定のハックには使えなくなるが、その代わり数値型に直さなくて良い点を活用した別のハックができるだろう。
JavaのString.replaceはブチ切れた。$入ると解釈変わるとか型指定の意味ねーだろが。StringUtils使うと無駄に長くなるし。Regex型とか考えろや。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
人生unstable -- あるハッカー
暗黙の型変換、比較時のみの型変換 (スコア:1)
JavaScript, PHP, Visual Basic, C, MySQL…
とかく型変換は珍妙なルールが多くて混乱する。
Re: (スコア:0)
そうなんだよね
PHPの 0 == "yes" がtrueになるのはのけぞった
Re: (スコア:0)
プログラム言語の「暗黙のXXX」はほぼ全てが地雷。
というか、プログラムは、暗黙を明示するのが目的なんだよな。そもそも。
Re: (スコア:0)
それは頭が硬すぎる
Re: (スコア:0)
そういう人はコードをつなぎかえてプログラミングでもやっていればよろしい。
そもそもでいうなら、プログラムの技術というのは
全ての暗黙を明示するのが人間には無理だし無駄だから発達したんですよ。
Re: (スコア:0)
まあ言語仕様をちゃんと分かってしまえば「明示的」になるわけだし、
明示的にしたければ明示的にも書けるわけで、
まあ確かにうっかりミスで分かりにくいエラーが出ることもあるけど、
それよりは利便性が上回ってるかなと思う。
Re: (スコア:0)
そうかもしれないが、PHPの “0” (文字列の0) が論理式の文脈で偽に評価されるのはひどいと思う。
% php -r "echo('0' ? 1 : 0);"
0
Re: (スコア:0)
別に酷くはない。
「空文字やnullなどでないかどうか」という判定のハックには使えなくなるが、
その代わり数値型に直さなくて良い点を活用した別のハックができるだろう。
Re: (スコア:0)
JavaのString.replaceはブチ切れた。
$入ると解釈変わるとか型指定の意味ねーだろが。
StringUtils使うと無駄に長くなるし。
Regex型とか考えろや。
Re: (スコア:0)