nginScriptについて
今は何がサポートされているか まだ何がサポートされていないか ダウンロードとインストール Linuxパッケージとしてインストール ソースからのビルド |
nginScriptは http と streamの中に場所と変数ハンドラを実装することができるJavaScript言語のサブセットです。nginScriptは幾らかのECMAScript 6拡張を持つECMAScript 5.1 に準拠して作成されています。互換性はまだ進展しています。
今は何がサポートされているか
- Boolean値, 数値, 文字列, オブジェクト, 配列, 関数 および 正規表現
- ES5.1 オペレータ, ES7 指数オペレータ
-
ES5.1 構文:
var
,if
,else
,switch
,for
,for in
,while
,do while
,break
,continue
,return
,try
,catch
,throw
,finally
-
ES6
Number
およびMath
のプロパティとメソッド -
String
メソッド:-
ES5.1:
fromCharCode
,concat
,slice
,substring
,substr
,charAt
,charCodeAt
,indexOf
,lastIndexOf
,toLowerCase
,toUpperCase
,trim
,search
,match
,split
,replace
-
ES6:
fromCodePoint
,codePointAt
,includes
,startsWith
,endsWith
,repeat
-
非標準:
fromUTF8
,toUTF8
,fromBytes
,toBytes
-
ES5.1:
-
オブジェクト
: プロパティリストを持たない基本的なObject.create()
-
配列
メソッド:-
ES5.1:
isArray
,slice
,splice
,push
,pop
,unshift
,shift
,reverse
,sort
,join
,concat
,indexOf
,lastIndexOf
,forEach
,some
,every
,filter
,map
,reduce
,reduceRight
-
ES6:
of
,fill
,find
,findIndex
-
ES7:
includes
-
ES5.1:
-
ES5.1
Function
メソッド:call
,apply
,bind
-
ES5.1
RegExp
メソッド:test
,exec
-
ES5.1
Date
メソッド -
ES5.1 グローバル関数:
isFinite
,isNaN
,parseFloat
,parseInt
,decodeURI
,decodeURIComponent
,encodeURI
,encodeURIComponent
まだ何がサポートされていないか
-
ES6
let
およびconst
宣言 - ラベル
-
arguments
配列 -
eval
関数 -
JSON
オブジェクト -
Error
オブジェクト -
setTimeout
,setInterval
,setImmediate
関数 -
non-integer fractions (
.235
), exponential (3.35e10
), binary (0b0101
), octal (0o77
), hexadecimal (0x1123
) literals
ダウンロードとインストール
nginScript は二つのモジュールで利用可能です:
両方のモジュールはデフォルトでビルドされません。それらはソースからコンパイルするかあるいはLinuxパッケージとしてインストールされなければなりません。
Linuxパッケージとしてインストール
Linuxについては、nginScriptモジュール packages を使うことができます:
-
nginx-module-njs
— nginScript dynamic モジュール -
nginx-module-njs-dbg
—nginx-module-njs
パッケージのためのデバッグシンボル
ソースからのビルド
nginScriptのソースと一緒にrepositoryが以下のコマンドでクローンすることができます: (Mercurial クライアントが必要です):
hg clone http://hg.nginx.org/njs
そして、モジュールは--add_module
configuration パラメータを使ってコンパイルされる必要があります:
./configure --add-module=path-to-njs
/nginx
モジュールは dynamicとしてビルドすることもできます:
./configure --add-dynamic_module=path-to-njs
/nginx