

# CloudFront Functions の JavaScript ランタイムの機能
<a name="functions-javascript-runtime-features"></a>

CloudFront Functions の JavaScript ランタイム環境は [ ECMAScript (ES) バージョン 5.1](https://www.ecma-international.org/ecma-262/5.1/) に準拠しており、ES バージョン 6～12 の一部の機能をサポートしています。

最新の機能を利用するには、JavaScript ランタイム 2.0 を使用することをお勧めします。

JavaScript ランタイム 2.0 の機能には、1.0 と比較して以下の変更があります。
+ バッファモジュールメソッドが利用可能です。
+ 以下の非標準の文字列プロトタイプメソッドは使用できません。
  + `String.prototype.bytesFrom()`
  + `String.prototype.fromBytes()`
  + `String.prototype.fromUTF8()`
  + `String.prototype.toBytes()`
  + `String.prototype.toUTF8()`
+ 暗号モジュールには次の変更があります。
  + `hash.digest()` - エンコーディングを指定しない場合、戻り型は `Buffer` に変更されます。
  + `hmac.digest()` - エンコーディングを指定しない場合、戻り型は `Buffer` に変更されます。
+ その他の新しい機能の詳細については、「[CloudFront Functions の JavaScript ランタイム 2.0 の機能](functions-javascript-runtime-20.md)」を参照してください。

**Topics**
+ [JavaScript ランタイム 1.0 の機能](functions-javascript-runtime-10.md)
+ [JavaScript ランタイム 2.0 の機能](functions-javascript-runtime-20.md)