- OpenResty完全開發(fā)指南:構(gòu)建百萬(wàn)級(jí)別并發(fā)的Web應(yīng)用
- 羅劍鋒
- 444字
- 2019-07-25 11:55:09
3.5 變量
Lua語(yǔ)言里的變量有作用域的概念,分為局部變量和全局變量,名字區(qū)分大小寫。
局部變量需要使用關(guān)鍵字“l(fā)ocal”聲明,作用域僅限本代碼塊(文件內(nèi)或語(yǔ)句塊內(nèi)),沒有關(guān)鍵字“l(fā)ocal”聲明的變量都是全局變量,而且不需要聲明就可以直接使用:
x = 1 -- 使用一個(gè)全局變量x,賦值為1,全局可見 local str = 'matrix' -- 使用一個(gè)局部變量str,僅此文件內(nèi)可見 do -- 開始一個(gè)代碼塊 local pi = 3.14 -- 局部變量pi,僅在此代碼塊內(nèi)可見 end -- 代碼塊結(jié)束 print(type(pi)) -- 局部變量pi消失,訪問的是全局變量pi
變量如果沒有顯式賦值,那么它的值就是nil,所以代碼的最后一行會(huì)輸出“nil”。
在Lua里應(yīng)當(dāng)盡量少使用全局變量,多使用局部變量。局部變量不僅很好地控制了變量的作用域,避免全局名字沖突,而且因?yàn)椤熬植炕保忉屍鞑檎业乃俣纫哺臁?img alt="實(shí)際上Lua全局變量存放在一個(gè)名為“_G”的表里。" class="qqreader-footnote" src="https://epubservercos.yuewen.com/D91FDF/13916125603778706/epubprivate/OEBPS/Images/note.png?sign=1755262377-veV3FXKgEU22rFAcc8xDC0ZpumeNDdTK-0-b9e6e0ec7201fbd528f35e3c9c165f09">
一個(gè)比較常用的全局變量是:“_”(下畫線,也是合法的變量名),通常當(dāng)作“占位符”,在不想專門起名來保存某些值時(shí)就可以使用“_”來暫存并忽略。
Lua語(yǔ)言里沒有“常量”,實(shí)踐中我們通常用全大寫名字的變量來表示常量,例如:
local MAX_COUNT = 1000 -- 全大寫的變量,提醒開發(fā)者應(yīng)該當(dāng)作常量來使用
推薦閱讀
- Spring 5企業(yè)級(jí)開發(fā)實(shí)戰(zhàn)
- Developing Middleware in Java EE 8
- Spring Cloud、Nginx高并發(fā)核心編程
- Linux網(wǎng)絡(luò)程序設(shè)計(jì):基于龍芯平臺(tái)
- Learn WebAssembly
- Internet of Things with Intel Galileo
- YARN Essentials
- Interactive Applications Using Matplotlib
- Windows內(nèi)核編程
- Creating Stunning Dashboards with QlikView
- Java語(yǔ)言程序設(shè)計(jì)教程
- Python項(xiàng)目實(shí)戰(zhàn)從入門到精通
- Java Web從入門到精通(第3版)
- MongoDB Cookbook(Second Edition)
- PHP Microservices