6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Ideone】chromeでjavascriptを使うときは、Node.jsで実行する

Posted at

3月2日、CodeIQで解いた問題のフィードバックが来ました。そこには、「プログラムとしては合っているけど、Ideoneではエラーになってしまったので不合格」というメッセージが書いてありました。Ideoneとは何なのでしょうか?また、プログラムが合っているのにエラーとは何なのでしょうか?調べてみました。

Ideoneとは

Ideoneは、環境環境を用意することなくネット上で書いたプログラムを実行できるWEBサービスです。javascriptは、PCとメモ帳があれば開発環境が整いますが、phpなどはPCに必要なツールをダウンロードしないと開発環境が整いません。

しかし、Ideoneは、これらの手間を省きプログラムを実行することができるのがポイントです。URLが生成されるので、第三者に見られても良いコードに限るといった注意点については、Ideoneの使い方をご覧ください。

なぜ、IdeoneでJavaScriptがエラーになったのか?

それは、僕がchoromeを使っているにも関わらず、Ideone上で実行するときのコードの種類をjavascript(rhino)、あるいはJavaScript(spidermonkey)を選択していたからでした。実は、プログラムはブラウザなどの実行環境に影響を受けるんだそう。そして、ブラウザによってJavaScriptの種類が違うということも知りました。

クロノス・クラウン代表 柳井 政和さん

rhinoはJavaで記述され、Mozilla Foundationで管理配布されています。spidermonkeyは同じ Mozilla FoundationでC実装です。これらは、FirefoxやJavaを利用した環境で使われます。
ChromeはV8で、これはnode.jsにも利用されています。IEでは、また違うエンジンです。

こうして、chromeはnode.jsと関連があるということがわかりました。chromeにFirefoxのJavaScriptを指定していたら、エラーが起きるはずです。そして、chromeとnode.jsで、無事にプログラムを実行することができました。

まとめ

JavaScriptでも実行環境によって、動作が違ってくることを初めて知りました。他のブラウザでは確認してないですが、chromeでJavaScriptを使うときは、Node.jsを使うと正常動作することを紹介しました。

参考サイト
Ideoneの使い方 Tbpgr Blog
Ideoneの使い方 Qiita

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?