Javascript 和 Lua 程式語言的差異


我們知道 JavaScript 和 Lua 在流行度和使用場景方面存在巨大差距。除了流行度和使用場景的差異外,這些語言在程式碼層面也有許多差異。

下表重點介紹了 JavaScript 和 Lua 之間一些最顯著的差異。

關鍵JavaScriptLua
比較時的隱式轉換JavaScript 在使用 == 或 != 比較運算子比較任何兩個物件時會進行隱式轉換。Lua 在使用比較運算子時不會在型別之間進行轉換。
運算子優先順序在 JavaScript 中,==、===、!= 和 !== 運算子的優先順序低於 >、>=、<、<=。在 Lua 中,所有比較運算子的優先順序相同。
運算子過載在 JavaScript 中,您不能過載運算子。在 Lua 中,您可以過載運算子。
操作環境在 JavaScript 中,您不能操作環境。在 Lua 中,您可以使用 Lua 5.1 中的 **getfenv** 和 **setfenv** 或 Lua 5.2 和 5.3 中的 **_ENV** 操作環境。
可變引數函式在 JavaScript 中,所有函式本質上都是可變引數的。在 Lua 中,您需要顯式宣告可變引數函式。
不同的命名運算子在 JavaScript 中,邏輯運算子為 ||、! 和 &&在 Lua 中,相同的邏輯運算子分別寫為 **or、not** 和 **and**
索引陣列在 JavaScript 中,陣列是從 0 開始索引的。在 Lua 中,陣列是從 1 開始索引的。
呼叫方法物件在 JavaScript 中,我們使用 .(點) 運算子來呼叫方法物件。在 Lua 中,我們使用 **冒號** 而不是點運算子來呼叫方法物件。

更新於: 2021年7月20日

231 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告