为啥 type(nil)==nil 是假的?
Posted
技术标签:
【中文标题】为啥 type(nil)==nil 是假的?【英文标题】:Why type(nil)==nil is false?为什么 type(nil)==nil 是假的? 【发布时间】:2015-04-27 08:01:53 【问题描述】:我正在阅读《用 Lua 编程》一书,但我不明白练习 2.1:
表达式的值是什么
类型(无)==无?
(你可以使用 Lua 来检查你的答案。)你能解释一下这个结果吗?”
当我执行这段代码时,我得到“假”的结果。我无法解释这个结果,从我的角度来看,正确的结果应该是“真实的”。我试过了
type(some_undeclared_variable)==nil
它也给了我“假”。
【问题讨论】:
【参考方案1】:函数type()
总是返回一个字符串,type(nil)
的值是字符串"nil"
,和nil
不一样,它们的类型不同。
【讨论】:
以上是关于为啥 type(nil)==nil 是假的?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Object.prototype instanceof Object 是假的?
为啥 Object.Equals(new Object(), new Object()) 是假的?
为啥文档不存在。但所有时间 !snapshot.hasData 都是假的
Swift:String 不能为 nil,那为啥 stringByAddingPercentEncodingWithAllowedCharacters 可以为 nil? [复制]