问题标签 [nothing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
108508 浏览

vb.net - 为什么我不能检查“日期时间”是否为“无”?

在 VB.NET 中,有没有办法将DateTime变量设置为“未设置”?为什么可以将 a 设置DateTimeNothing,但无法检查它是否是Nothing?例如:

第二条语句抛出此错误:

0 投票
2 回答
4432 浏览

vb.net - VB 在传递 ByRef 时检查空引用

我有一个通过引用接受字符串的函数:

如果我这样称呼它:

我希望它做一些不同于我这样称呼它的事情:

是否可以在 VB .NET 中调用该方法的方式检测到这种差异?

编辑

为了澄清我为什么要这样做,我有两种方法:

Nothing所有逻辑都在第二个重载中,但是如果传入函数而不是传入包含 的变量,我想执行不同的逻辑分支Nothing

0 投票
1 回答
1095 浏览

haskell - 使用 Haskell 的“Maybe”,类型声明 [初学者问题]

我已经开始尝试使用 Haskell 并且遇到了问题。qqq 是一个函数,如果用“Nothing”调用应该打印一个字符串,如果用“Just something”调用则打印其他东西。

第一次尝试似乎有效:

但:

  • 当我试图main = qqq (Nothing)让它失败时(“约束中的模糊类型变量‘a0’:(显示a0)因使用‘qqq’而产生”)
  • 如果失败,我想添加类型签名时:
    • qqq :: Maybe x => x -> IO ()-> Type constructor 'Maybe' used as a class-> 但不是吗?
    • qqq :: (Maybe x) -> IO (). 现在签名本身看起来成功了。但是main = qqq (Just 43)开始失败并出现那个神秘(Show a0)的错误,比如main = qqq (Nothing)以防万一。

问题:

  1. 为什么用 qqqNothing调用与用 调用如此不同Just 43
  2. 是什么(Show a0)?它仅在错误消息中提及。任何使用它的尝试都会导致类似“显示不在范围内”的结果。
  3. 什么是正确的类型签名?如何制作它推导出的 Haskell 打印类型签名?期待类似的东西:
0 投票
2 回答
417 浏览

scala - Scala:对多态类型的单例实例使用 Nothing

给定一个多态性状

可能想实现各种专门的实例,例如

等等。现在经常需要的变换也是恒等变换。与其为每种类型 T 指定标识,不如对所有类型 T 仅使用一个单例实例似乎更可取。我的问题是:在 Scala 中实现此目的的最佳方法是什么?

这是我目前发现的:查看 List[T] 如何实现 List.empty[T] 和 Nil,我尝试使用 Nothing 作为 T 类型。这似乎是有道理的,因为 Nothing 是所有其他类型的子类型:

这似乎有效。但是,无论我想在哪里按原样使用这个实例,就像这里:

我收到编译器错误“类型不匹配;找到:Identity.type,需要:Transform [String]”。为了使用它,我必须明确地转换它:

我不确定这是最好的,甚至是“正确”的方法。感谢您的任何建议。

0 投票
1 回答
645 浏览

vb.net - 如何用空替换值类型?

我正在编写一个调用 web 服务方法的 vb.net 应用程序。有问题的 webservice 方法接受大约 20 个参数,例如 (string x, string y, string z.... Integer a, Integer b, Integer c)。

可能没有故意将任何一个整数(ab 或 c)设置为一个值。但是,因为 Integer 是一种值类型(感谢 Stack Overflow),所以我无法将其设置为 Nothing,因此当用户没有为这些整数选择特定值时,我将其默认为 -1。但是,当用户没有初始化这些整数(不是 0 或 -1,它想要 Nothing/Null)时,webservice 方法希望我将它传递给 Null/Nothing。

我如何为 web 服务提供它想要的多个条件,对 web 服务的调用略有不同(例如,如果整数 a = -1 然后用 (x,y,z,Nothing,b,c) 等调用 web 服务...... )?

0 投票
3 回答
279677 浏览

vba - VBA:条件 - 什么都不是

VBA 应用程序中有一个If条件,如下所示:

当代码在调试模式下运行时,我发现If即使My_Object有“无变量”,条件也会返回 true。

有人可以解释一下吗?我只想My_Object.ComputeMy_Object存在时被执行。

0 投票
2 回答
6118 浏览

vb6 - Is Nothing 比较给出类型不匹配

我正在尝试检查“Listivew.Tag 属性是否为空”。

我曾经对所有场景进行普遍的“什么都没有”检查,作为第一次检查以避免错误

有人可以解释如何在 VB 6 中做到这一点吗?

给出错误“类型不匹配”

0 投票
2 回答
19231 浏览

vb.net - 如何在 VB.Net 2010 中使用双精度空值?

直截了当的问题:我有一些变量是双精度的。我希望能够在其中存储“空”状态,即我需要能够表示该变量不包含有效数据。我真的不想将布尔“有效”变量与每个双精度数相关联,这将是丑陋的并且可能是不必要的。

首先,我发现必须以不同的方式声明变量以允许检查“IsNothing”的概念,所以我这样做:

(注意问号)。如果我不这样声明,错误检查会给我一个“IsNot 需要具有引用类型的操作数”消息。

声明后,将变量设置为...

...似乎将其设置为零,因为它从不运行我的 if/else 语句中的代码来检查是否someDouble IsNot Nothing...这是不好的,因为该变量可以合法地将 0 存储为有效的数据。

我在这里想念什么?谢谢!

编辑:我遗漏了我在类中使用属​​性GetSet这些值。事实证明,我做的事情是正确的,只是我将Property' 的类型保留为 aDouble而不是 a Double?,所以它被强制转换回零而不是Nothing值。不过,有用的信息仍然在下面的答案中!

0 投票
0 回答
1810 浏览

vb.net - 在 VB.NET 中不传递任何参数(对象引用未设置为对象的实例)

我正在尝试将“Nothing”传递给 Vb.NET 中的参数(使用 VS 2010,一切都默认)

代码是这样的:

在哪里 :

和 :

我不熟悉 VB.NET 但为什么我不能只传递一个 Nothing 参数?在 c++ 中你可以传递一个 NULL ,这在这里不可能吗?

我收到以下错误:

附加信息:对象引用未设置为对象的实例。

0 投票
2 回答
3410 浏览

vb.net - 为什么要在 finally 块中将对象设置为 Nothing?

在这个 VB.NET 代码中:

为什么需要将 o 设置为Nothing?如果我不将其设置NothingFinally块怎么办?我认为如果你不设置它是可以的,Nothing因为该对象将被标记为 GC。