Lua 数据类型 - nil

一、作用

  1. 表示没有任何值
  2. 删除一个全局变量
  3. 删除 table 中的值
lua 复制代码
--- name 没有声明过,所以会为 nil,表示当前什么都没有
print(name)     --> nil
lua 复制代码
local name = "江澎涌"
print(name)             --> 江澎涌

--- 将 name 置为 nil 进行删除
name = nil
print(name)             --> nil
lua 复制代码
--- 创建一个表
---   key    |      value
--- "name"   |  "jiangpengyong"
local table = { name = "jiangpengyong" }
print(table["name"])    --> jiangpengyong
table["name"] = nil
print(table["name"])    --> nil

二、获取 nil 类型

因为 type 的返回值都是字符串,所以在 nil 进行比较时,记得加上 "

lua 复制代码
--- 类型
print(type(X))      --> nil

--- 因为这里的 type(X) 是 string 类型,所以不等 nil
print(type(X)==nil)     --> false

--- 需要使用 "nil" 进行比较
print(type(X)=="nil")   --> true

--- 也可以这样使用
print(X == nill)        --> true

三、写在最后

Lua 项目地址:Github传送门 (如果对你有所帮助或喜欢的话,赏个star吧,码字不易,请多多支持)

公众号搜索 "江澎涌" 可以第一时间获取到后续文章

相关推荐
crescent_悦1 小时前
C++:The Largest Generation
java·开发语言·c++
我叫洋洋1 小时前
[Proteus 和 stm32f103c8t6]的使用控制OLED篇]
c语言·stm32·单片机·嵌入式硬件·蓝桥杯·proteus
paeamecium2 小时前
【PAT甲级真题】- Student List for Course (25)
数据结构·c++·算法·list·pat考试
Book思议-2 小时前
【数据结构】栈与队列全方位对比 + C 语言完整实现
c语言·数据结构·算法··队列
c++逐梦人5 小时前
C++11——— 包装器
开发语言·c++
IT方大同5 小时前
(实时操作系统)线程管理
c语言·开发语言·嵌入式硬件
十年编程老舅5 小时前
Linux 多线程高并发编程:读写锁的核心原理与底层实现
linux·c++·linux内核·高并发·线程池·多线程·多进程
wildlily84275 小时前
C++ Primer 第5版章节题 第十三章(二)
开发语言·c++
xiaoye-duck6 小时前
【C++:unordered_set和unordered_map】 深度解析:使用、差异、性能与场景选择
开发语言·c++·stl
老约家的可汗6 小时前
list 容器详解:基本介绍与常见使用
c语言·数据结构·c++·list