2022年2月4日のブックマーク (2件)

  • JavaScript で parseInt / parseFloat を使わない方が良い理由

    となるのが原因です。parseInt というのは、文字列を解析して整数値(int)を返すグローバル関数であり、引数をまず文字列に変換する仕様となっております。その段階で 0.0000005 が "5e-7" という文字列に変換されてしまい、その文字列の先頭の 5 だけが数字として解析されてしまったため、結果として parseInt(0.0000005) === 5 となりました。 なぜ String(0.000005) === "0.000005" に、String(0.0000005) === "5e-7" になるのかについては、この記事の最後で余談として説明します。 整数化には Math.trunc を使おう このように、parseInt は文字列を引数にすることを前提にしているため、速度の面でも可読性の面でも「小数値を整数値に変換したい」という場合に使うのは望ましくありません。最も望

    pj_lim
    pj_lim 2022/02/04
    廃止して
  • 「1Byteが8bitに決まったワケ」についての長い話 まずは「バベッジの階差機関」から

    フォン・ノイマンの草稿 ENIACもそうで、サイクル速度0.2ms(つまり動作周波数5KHz)で、最大10桁の数字の演算が可能(演算に要するサイクル数は演算の桁とか種類で異なる)だったが、これを構築するのに1万7000以上の真空管を必要としたという。なにせ1桁分の数字を記憶するのに10bitのRing Counterを利用した関係で、36の真空管が必要だったというのだから、そりゃデカくなるわけである。 で、もっと良い方法はないか? という話であるが、ENIACの次に開発されたEDVACの設計の初期段階で、ジョン・フォン・ノイマン博士が“First draft of a report on the EDVAC”(EDVACに関する報告書の第1草稿)なる文書をリリースしている。ちなみにIEEEだと有償の配布になっているが、“First draft of a report on the ED

    「1Byteが8bitに決まったワケ」についての長い話 まずは「バベッジの階差機関」から
    pj_lim
    pj_lim 2022/02/04