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吧,码字不易,请多多支持)

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

相关推荐
H.莓飛4 分钟前
【C++】类与对象(末):static、友元与拷贝优化
linux·开发语言·c++·visual studio
sm_926787059 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
by209999 小时前
C++ 多态:同一个基类接口,调用不同的函数
开发语言·c++·经验分享·多态
colinu9 小时前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
wuminyu10 小时前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
longlongzihan10 小时前
链表找环:Floyd 判圈算法(LeetCode 141 & 142 )
c++·算法·leetcode·链表
liulilittle10 小时前
Linux 下 select 测试函数
linux·服务器·网络·数据库·c++·select·c
Logic10110 小时前
C语言/数据结构欧几里得算法题解:长方形切割最大正方形——贪心划分计数
c语言·数据结构·算法·贪心算法·时间复杂度·空间复杂度·欧几里得算法
无忧.芙桃11 小时前
C++语言原理与实践(十二):list类的底层实现
c++·windows·list
沫璃染墨11 小时前
《Linux工程实践篇(二):线程池实战——从线程安全单例到完整源码实现》
linux·开发语言·c++·单例模式·设计模式·系统架构