1. 程式人生 > >[指令碼語言JavaScript ]Ringo JS-模組 ringo / zip

[指令碼語言JavaScript ]Ringo JS-模組 ringo / zip

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 方法和變數,並將它們與其他模組隔離。

該模組提供瞭解壓縮 zip 檔案和流的類。

Functions

Instance Methods

Instance Properties

一個類,用於讀取和解壓縮本地 zip 檔案。

Parameters

String path

the location of the zip file

ZipFile.prototype. close ()

關閉壓縮檔案。

ZipFile.prototype. entries

包含此 zip 檔案中所有條目名稱的陣列。

ZipFile.prototype. getSize (name)

返回給定條目中的未壓縮大小(以位元組為單位),如果未知則返回-1。

Parameters

String name

the entry name

ZipFile.prototype. getTime (name)

返回給定條目的上次修改時間戳,如果不可用,則返回-1。

Parameters

String name

the entry name

ZipFile.prototype. isDirectory (name)

如果具有給定名稱的條目表示一個目錄,則返回 true。

Parameters

String name

the entry name

ZipFile.prototype. isFile (name)

如果具有給定名稱的條目表示檔案,則返回true。

Parameters

String name

the entry name

ZipFile.prototype. open (name)

獲取輸入流以讀取具有給定名稱的條目。

Parameters

String name

the entry name

通過壓縮檔案或流的流式迭代器。這個迭代器產生的每個專案都是一個輸入流,用於讀取一個 zip 條目。每個入口流都具有附加名稱,isDirectory,isFile,size 和 time 屬性,它們與 ZipFile 中相應方法的語義相同。

Parameters

Stream|String resource

an input stream or file name

See