Rhino JavaScript エンジン
v.8.5 の ThingWorx では、1.7.11 の Rhino.JavaScript エンジンが使用されています。Rhino には JavaScript 1.7 のすべての機能が含まれており、JavaScript 1.8 の一部の機能がサポートされています。以下のような一般的な機能/ツールも備わっています。
• Java のダイレクトスクリプティング
• JavaScript シェル
• JavaScript コンパイラ
• JavaScript デバッガ
JavaScript 1.7 は Rhino シェルのデフォルトバージョンです。JavaScript 言語は、ECMA-262 ECMAScript 規格によって管理される、汎用のクロスプラットフォームプログラミング言語です。Rhino 1.3 以上はこの規格のエディション 3 に準拠しています。Rhino 1.6 以上は ECMA-357 ECMAScript for XML (E4X) を実装しています。Rhino 規格、リリースノート、実装の詳細については、
https://developer.mozilla.org サイトを参照してください。
|
Rhino は ThingWorx の localeCompare JavaScript サービスで追加の引数をサポートしていません。localeCompare は、ECMA-262 ECMAScript 標準の標準関数ではないため、サービスの最初の引数のみを検証します。
|
|
const 変数のスコープはブロックではなく関数になっています。const の代わりに let を使用してください。
|
グローバル組み込みプロトタイプのロックダウン
一般に、Array.prototype や String.prototype などの組み込みプロトタイプオブジェクトを修正することはお勧めしません。これらのオブジェクトはすべてのスクリプトの実行に使用される共有のベーススコープに存在するので、修正すると重大な結果が生じることがあります。このため、v.8.5 では、ThingWorx プラットフォームでプロトタイプオブジェクトはロックダウンされています。