AutoHotkey 中实现单行逻辑或短路求值的等价写法是什么
实现逻辑说明
你给出的JavaScript代码利用了短路或运算的特性:仅当左侧表达式的布尔判定结果为假时,才会执行右侧的表达式;如果左侧为真,运算会直接终止,右侧代码不会运行。
AutoHotkey 单行实现方案
AHK v2 版本
输出到调试控制台:false || OutputDebug('foo')
弹出提示窗:false || MsgBox('foo')
输出到标准输出:false || FileWrite('foo', '*')
AHK v1.1+ 版本
和JS风格一致的表达式写法:false || (MsgBox("foo"))
传统命令写法:false || MsgBox, foo
你可以把代码里的false替换成true测试,此时右侧的输出逻辑会被跳过,和你给出的JavaScript代码表现完全一致。
内容的提问来源于stack exchange,提问作者Wenfang Du
相关产品推荐
相关产品推荐

