JavaScript

JavaScript 変数の型判定

更新日:

JavaScript の場合は、var let const いずれにしても、変数に型を限定することはできません。数値でも文字列でも同じように変数にいれることができます。

このように同じ変数に数値をいれたり文字列を入れたりすることができます。

しかし、他の言語では、変数の型を限定することができるものも多いです。
これは例ですがこのような感じです。

JavaScriptのような言語を、動的型付け言語と呼びます、変数の方が動的に変化するからです。対して、変数の方がきっちり決まってしまうような言語を、静的型付け言語と呼びます。

どちらかというと静的型付け言語の方が開発しやすいです。間違いが起きることが少なくなるからです。

JavaScriptは動的型付け言語です。これでは開発しにくいから、という理由もあり TypeScript というようなJavaScript に変換できる 拡張JavaScript(altJS)と呼ばれる言語も登場しています。

JavaScript でも変数の型を知りたい。

この変数には、なんの型が入っていただろうか、と確認したくなる場面は非常に多いです。なので、そのようなことを知るための関数を用意しましょう。 次のような関数を作ります。

これで、変数を宣言して値を入れてこの関数に渡せば、それが、Boolena か数値か整数値か文字列か関数かオブジェクトか配列か、がわかるようになります。

こんなふうに使います。

先日書いた内容のところの、isNull や isUndefined とあわせて使うと、より便利になるでしょう。

複数の値を同時にチェックしたり、否定の値をチェックしたりする多数の関数の例は、私の作っているライブラリで実装されているので参考にしてください。

関数の引数に型を限定させるときに使う

型を判定するコードはこのような場面で使うと、とても強力です。強力というのは、プログラミングが効果的に書きやすくなるということ。

assert は「宣言する」という意味の英単語で、プログラムでは true を受け取ったら何もせずに、false を受け取ったら例外を発生させて、プログラムを止めようとする、という命令です。

これで、プログラムが書きやすくなるというものなわけです。

変数の型を判定して、上手にプログラミングできるようになっていってください。

JavaScript は動的型付け言語といわれますが、自分でisNumberなどの関数を用意して判定することで、静的型付け言語と同じような開発効率を得て、生産性を高めることができます。

いろいろ工夫してみてください。

-JavaScript

Copyright© プログラミングアカデミー ゼロプラスワン , 2024 All Rights Reserved Powered by STINGER.