47

Mozilla Firefox に関連して、Google Chrome がサポートする JavaScript のバージョンはどれですか? つまり、Chrome は、Firefox もサポートしている JavaScript 1.6、1.7、または 1.8、またはそれらの組み合わせをサポートしていますか?

4

6 に答える 6

41

Chrome は「javascript1.7」とマークされた Javascript を実行しますが、「let」スコープ変数演算子などの JS1.7 機能はサポートしていません。

このコードは Firefox 3.5 では実行されますが、V8 を使用する Chrome では実行されません。

<script language="javascript" type="application/javascript;version=1.7">
    function foo(){ let a = 4; alert(a); }; foo();
</script>

言語を「javascript1.7」に変更してタイプを省略した場合、Firefox 3.5 の JS 1.7 機能では動作しません。type セクションは必須です。

これは、一般的な WebKit バグhttps://bugs.webkit.org/show_bug.cgi?id=23097に関連しているようです。別のエンジンを使用していても、Chrome が Safari の動作をエミュレートしている可能性があります。

JS 1.8 機能のサポートについて尋ねられたとき、V8 チームは、ページが両方のブラウザーで同じように動作するように、Safari で使用されているバージョンを追跡しようとしていると述べました。

于 2009-07-14T13:24:08.493 に答える
17

このスレッドはまだ関連性があります。2012 年現在、Chrome は Javascript 1.6 のほとんどをサポートしていますが、文字列と配列のジェネリックは含まれていません。1.7 のいずれもサポートしていません。1.8 からの reduce と reduceRight、1.8.1 のすべて、Getter と setter、およびこのページにリストされているすべての非バージョン固有のものをサポートします。このページは、JavaScript のバージョンを指定する Mozilla Developer Network からリンクされています

于 2012-03-14T03:52:50.070 に答える
13

GoogleChromeはV8javascriptエンジンを使用しており、現在ECMA-262、第3版を実装していると述べています。これは、少なくともバージョン1.5をサポートしていることを意味します。

于 2008-11-18T21:46:31.417 に答える
10

簡単な Javascript 1.6 機能 Chrome (および node.js などの V8 ユーザー) は実行されません: for each … in

for each (variable in object)
  statement

JS 1.5(J cの回答による)であるため、Chromeが完全に実装すると主張する唯一のバージョンです。

実際、Chrome チームは主に Safari (当時最も著名な Webkit ユーザー) との互換性を目指しており、それらの理由で機能を拒否しました。

于 2010-01-08T15:11:20.203 に答える
7

GoogleChromeは最大Javascript1.7をサポートしています。

<script language="javascript1.7">alert(1.7);</script> - Alerts
<script language="javascript1.8">alert(1.8);</script> - Doesn't alert
于 2008-11-18T21:41:01.460 に答える
4

これは古いスレッドですが、ここに行きます。Google Chrome は以下に応答しません

function foo(){
  let a = 4;
  alert(a);
}
foo();

したがって、JavaScript 1.7 をサポートしていません。

于 2011-04-13T21:12:52.490 に答える