需要解释“+(x > 180)”或“+()”
Need explanation for "+(x > 180)" or "+()"
本文关键字:解释 更新时间:2023-09-26
我在某些javascript代码中发现了这个: +(x > 180)
对于小于 180 的 x,此值的返回值似乎是 0,对于小于 180> 值为 1。
这是简单比较的流畅方法,但我找不到任何用于此比较的文档,并且我不确定它来自哪里(javascript/jquery/other library)。所以我不确定什么时候可以使用它。
我的意思是,我知道 x> 180 是什么,但是围绕它的简单"+()"如何替换整个"if(x>180){return 1;}否则 {返回 0}。
有人可以给我一个解释或链接到这个声明的证明。谢谢
对于小于 180 的 x,此值的返回值似乎是 0,对于小于 180> 值为 1。
对,因为+(x > 180)
是两个表达式:
-
x > 180
- 这将评估true
或false
-
+(true or false)
- 一元+
运算符将其操作数强制为一个数字。true
胁迫1
,false
胁迫0
。(这由规范中的 §11.4.6 - 一元+
运算符和 §9.3 - ToNumber 定义。
因此,如果x
大于180
,则最终会得到1
,如果x
小于或等于180
,则0
。
+
简单地转换为数字。
例如:
var str = '20'; // is a string
var num = +str; // typecasting the string to a number
console.log(num); // returns (int) 20
相关文章:
- 你能解释一下这个阶乘函数是如何工作的吗?
- 你能解释一下为什么这个javascript不正确吗
- Javascript 如何强制 string.replace 不将我的字符串解释为正则表达式
- Appcelerator Titanium:在运行时下载并解释JavaScript代码
- 注入的HTML仅在Dom中解释为字符串
- 对象.创建解释
- 无法解释的JavaScript行为-错误
- 使用ng选项,我如何筛选准确解释给定值的内容
- 在以下情况下解释 >= 和 <= 运算符的行为
- TypeScript解释了各种文件扩展名
- 有人能向我解释一下我犯的一个错误吗
- 请为javascript解释MVC中的VC
- 对这种与document.domain和CORS相关的不一致行为的解释是什么
- 解释分号的简单方法
- if条件中的递归混淆,JS如何解释“;真/假”;条件
- 解释javascript中的+var和-var一元运算符
- 有人能解释一下evaluate()和dragAndDrop()在下面的角度测试代码中调用了什么吗
- 需要解释Javascript regex请求参数解析
- getDataAsJSON()在PHP中是一个未定义的函数,但许多解释如何使用JSONP的网站都说要使用它
- 解释 JavaScript 中数字的行为