1. 程式人生 > >【指令碼語言JavaScipt】RINGO JS 模組 ringo/buffer

【指令碼語言JavaScipt】RINGO JS 模組 ringo/buffer

Ringo 是一個 JavaScript 平臺

ECMA JavaScript 規範將該語言描述為面向物件的程式語言,用於在主機環境中執行計算和處理計算物件。每個用 JavaScript 編寫的應用程式都需要一個主機環境,它提供特定於環境的物件和 API 來執行 I / O。 Ringo 為 JavaScript 提供了這樣一個環境,並附帶一組模組以使應用程式開發更容易。由於其作為通用程式語言的特性,JavaScript 可以用來解決各種各樣的問題,而 Ringo 可以幫助您這麼做。利用 Ringo,編寫命令列工具,複雜的 Web 應用程式甚至基於 Java UI 技術的 GUI 應用程式都很容易。

指令碼語言如 JavaScript 需要一個引擎來解釋和執行程式。 Ringo 沒有自己的引擎。相反,它使用 Mozilla Rhino,一種 Java 中的 JavaScript 實現。犀牛的最初發展始於 Netscape 時代,並一直持續到現在。基本思想是將 JavaScript 程式編譯為 Java 位元組碼,Java 位元組碼可以由 Java 虛擬機器(JVM)執行。犀牛還提供了對 Java 標準類庫和其他每個 Java 類的輕鬆訪問。這使得將現有的 Java 庫整合到新的 JavaScript 應用程式變得很容易。例如:Ringo 不是編寫自己的 I / O 系統,而是使用現有的 Java I / O 類,並將它們封裝起來以提供從 JavaScript 更容易的訪問。

Ringo 在伺服器或專用機器上執行 JavaScript,而不是在 Web 瀏覽器上下文中執行。如果您已經從基於 HTML 的應用程式中瞭解 JavaScript,則這是主要區別。沒有什麼像一個視窗物件,你沒有一個 DOM 來操縱 HTML 物件。儘管如此,很多事情會像你從瀏覽器中知道的那樣。您可以使用 console.log() 除錯到控制檯,但也有專用的日誌記錄模組可用於更復雜的日誌記錄。

Ringo 最大的優勢之一就是模組系統。 Ringo 並沒有自己構建程式碼,而是擁有一個易於使用的模組系統。它基於 CommonJS 模組,這是用於保持程式碼可互換的伺服器端 JavaScript 環境的規範。如果您瞭解 Node.js 的模組,您還知道如何在 Ringo 中編寫模組。一個模組封裝了 JavaScript 方法和變數,並將它們與其他模組隔離。

模組 ringo / base64

Base64 編碼和解碼二進位制資料和字串。

Example

>> var base64 = require('ringo/base64');
>> var enc = base64.encode('Hello World!', 'ISO-8859-15');
>> print(enc);
'SGVsbG8gV29ybGQh'
>> print(base64.decode(enc, 'ISO-8859-15'));
Hello World!

Functions


decode (str, encoding)

將Base64編碼的字串解碼為字串或位元組陣列。

Parameters

String str

the Base64 encoded string

String encoding

the encoding to use for the return value. Defaults to 'utf8'. Use 'raw' to get a ByteArray instead of a string.

Returns

String|ByteArray

the decoded string or ByteArray


encode (str, encoding)

將字串或二進位制編碼為 Base64 編碼的字串

Parameters

String|Binary str

a string or binary

String encoding

optional encoding to use if first argument is a string. Defaults to 'utf8'.

Returns

String

the Base64 encoded string