woshidan's blog

あいとゆうきとITと、とっておきの話。

JavaScriptの変数のキャスト

JavaScriptでの変数のキャストをあまりやったことがないな、と思ったので、調べてみました。

 

参考は、

http://blog.goo.ne.jp/kori39/e/03d9ce6a3180e9a553644a763fc42542

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseInt

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseFloat

です。

 

文字列を整数値に変換

parseInt(x,r)

x:文字列、r:その文字列がr進数の値を示しているか。入力を省略すると10進数

 

文字コードを使って入力された文字列がカタカナだけかチェックしたいことがあったときに

文字コード表は16進数で書かれていたのでそれを10進数に直すのに使いました。

 

文字列を小数値に変換

parseFloat(x)

x:文字列

 

小数の場合は10進数だけのようです。

 

数値を文字列に変換

String(x)

x:数字

 

数字を文字列に変換するのですが、入力表示用だけだったら、他の部分の文字列と

あわせれば文字列に自動的に変換してくれるのであまり使わないかも?

 

不動小数点数を整数に変換

Math.floor(x) -- 小数点以下切り捨て

Math.ceil(x) -- 小数点以下切り上げ

Math.round(x) -- 小数点以下四捨五入

 

いまのところ、JavaScriptでIDの区分を桁数で行って、一番上の桁の数字だけスイッチ文に入れたいとき、

100とか1000で割ると小数になっているのを直したりに使ってます。

 

PHPは基本的にCと同じですが、

(int) $var

みたいに$マークが要るのを忘れそうです。

 

追記

今回上げたものは、返り値が整数、小数になっているのであって、引数そのものの型や値が変化しているわけではないです。

ちょっと忘れていて15分くらい悩んでしまった……。