如果if((hit.transform != transform)
表示if hit.transform is Not transform
,那么如何检查陈述是否正确。 if(hit.transform = transform)
似乎不起作用。'if(condition = value)`是比较的正确语法吗?
回答
需要两个等于平等
if (hit.transform == transform)
需要注意的是,将允许各种隐式转换的,所以你应该使用三个等号,身份平等和完全平等的迹象:
if (hit.transform === transform)
请注意,一个等号是分配。
x = y;
现在x的值为y。
你的陈述
if(hit.transform = transform)
分配hit.transform改造的值,然后测试,看看这个表情,这将是相同的hit.transform的新值的结果,是“truthy”
+1用于早期用'==='教授良好习惯。 – RightSaidFred
另外,'==='不是*身份相等。这是严格的平等:两个对象实际上可能是*不同的对象,但仍然通过严格的平等测试。 – 2011-12-13 01:21:09
@AdamRackis对,然后在答案 - 为什么是“如果(A = B)”“有效”? (即使它很有趣。)它究竟在做什么?你将不得不为你的投票工作;-) – 2011-12-13 01:22:13
它
if(hit.transform == transform)
!=
是不等于。==
等于。
所以你会写:
if (hit.transform == transform) {
你写什么实际尝试这样设置hit.transform
价值transform
。
那么'='是做什么的,为什么它的工作方式(在上下文中)? – 2011-12-13 01:24:03
你需要使用“===”
这里是谷歌的第一个结果与解释 http://geekswithblogs.net/brians/archive/2010/07/03/quality-equality-with-javascript-quotquot-gt-quotquot.aspx
在大多数情况下,如果他使用'==',它也会有效。 – 2011-12-13 01:23:16
根据不同的要求,您可能==
和===
之间选择(,取反这些都将成为分别为!=
和!==
)。三重等号符号也将执行类型检查。
尝试进入您的JavaScript控制台以下:
1 == 1 // true
1 === 1 // true
1 == "1" // true
1 === "1" // false
编辑:=
是赋值运算符,这是从上面的比较运营商不同:
a = 1 // 1
a = "1" // "1"
a = "foo" // "foo"
当if
内使用该像if(a = "foo")
这样的条件,你正在有效地设置a
到"foo"
,然后测试if("foo")
。虽然"foo"
本身不是布尔条件,但Javascript引擎会将其转换为true
,这就是为什么它仍然有效。
然而,这可能会引入非常微妙的错误,这可能很难追查到,所以你最好避免这样的编程,除非你真的知道你在做什么。
那么,帖子中的“=”是什么呢?这是怎么回事? – 2011-12-13 01:27:08
处理'='的扩展答案 – Bart
- 1. 这是布尔比较正确的吗?
- 2. 如何使if语句在if(condition&condition&if())中?
- 3. 'else if'的正确语法是什么?
- 4. 多重比较的正确语法是什么?
- 5. 无法比较if语句中的值
- 6. IF语句的正确语法
- 7. Haskell中if语句的正确语法
- 8. 在PHP中,Is“if($ value)”是“if(empty($ value))”的倒数吗?
- 9. 这是正确的link_to rails语法吗?
- 10. 这是正确的json语法吗?
- 11. XSD if-else condition
- 12. .net dropdownlist if condition
- 13. Python/Django“if语句”语法不正确?
- 14. React js if else condition
- 15. if foreach and condition
- 16. 用于比较日期的TSQL查询的正确语法
- 17. GAS:setFormula和IF:正确的语法?
- 18. 什么是比较函数返回的正确方法
- 19. 比较TCL中两个列表的正确方法是什么?
- 20. 日期比较不正确
- 21. 排球反应字符串在if语句中没有正确比较
- 22. 无法正确比较两个数字
- 23. 在Excel-VBA中正确设置`If Condition`和正确使用`Loop Structure`
- 24. PHP if语句比较变量没有返回true吗?
- 25. 通过if语句比较空数据
- 26. JavaScript if语句比较不起作用
- 27. 使用if语句比较字符串
- 28. if语句,比较列表,python
- 29. 在if语句中比较两个LongWritable
- 30. 在if语句中比较字符串
感谢帅哥的快速和很多答案.. StackOverflow是最好的! – Thomas