IT人材のためのキャリアライフスタイルマガジン

evalの意味や使い方とは?具体例3選と注意すべき2点を学ぼう

更新日:2024年03月24日

英語

eval()の呼び出しはコード文字列を実行し、最後の文の結果を返します。evalは簡易テンプレートエンジンとして使われることがあるように便利ですが、セキュリティやパフォーマンス低下などのリスクもあります。evalの内容とリスクを理解して正しく使用して下さい。

evalの具体例3

上記で、eval()でJSONを扱う方法を紹介しましたが、一般的にあまりこの方法は使われていません。 モダンプログラミングではevalは扱いにくいのです。 それがJSON.parse()です。eval()とJSON.parse()、それぞれの意味を理解して使い方を慣れておくと非常に便利です。

evalを使う時の注意点2つ

今回evalの内容や具体例を紹介してきましたが、注意すべき点も当然あります。evalはeval is evilと称され、evalは悪で邪魔だと言われることもあります。下記にevalを使う時の注意点を2つ紹介します。

evalを使う時の注意点1:セキュリティ面のリスク

まず注意点としてあげるのがセキュリティ面のリスクです。 evalの特徴として文字列をJavaScriptコードに変換して実行できる点があげられます。 これは第三者が用意したJavaScriptプログラムを自由に実行できてしまい、情報漏洩などのリスクが伴ってしますのです。 この意味は、第三者が好きなようにコードを実行できることを意味しており、Webサイトとしては危険な状態と言えるでしょう。

evalを使う時の注意点2:パフォーマンス面のリスク

次に紹介する注意点が、パフォーマンス面のリスクです。 文字列をJavaScriptコードとして評価と解析を実行する作業が必要になり工程が増えてしまうのです。したがって、普通にJavaScriptコードを書いた場合に比べて実行速度が遅いという欠点があります。

evalの意味を理解して上手に使おう

evalは、「引数に文字列を指定するだけで、JavaScripコードを認識して実行できる」などの特徴がありますが、パフォーマンス・セキュリティ・乱雑性などのリスクもあります。 上記内容を踏まえてevalの意味を理解して上手に活用して下さい。

初回公開日:2022年11月21日

記載されている内容は2022年11月21日時点のものです。現在の情報と異なる可能性がありますので、ご了承ください。
また、記事に記載されている情報は自己責任でご活用いただき、本記事の内容に関する事項については、専門家等に相談するようにしてください。

アクセスランキング