Appropriate usage of == and === in JavaScript

This question already has an answer here: Which equals operator (== vs ===) should be used in JavaScript comparisons? 50 answers Difference between == and === in JavaScript [duplicate] 2 answers The == operator means equality after type conversion 1 == '1'; // true 1 == 1; // true The === operator means equality without any conversion 1 === '1'; // false 1 === 1; // true

在JavaScript中适当使用==和===

这个问题在这里已经有了答案: 应该在JavaScript比较中使用哪个等于运算符(== vs ===)? 50个答案 在JavaScript和=== ===之间的差异[复制] 2个答案 ==运算符表示类型转换后的相等性 1 == '1'; // true 1 == 1; // true ===运算符意味着没有任何转换的平等 1 === '1'; // false 1 === 1; // true

What about == and === in javascript?

Possible Duplicate: JavaScript === vs == : Does it matter which “equal” operator I use? Difference between == and === in JavaScript As we all know you can do either (value==other_value) or (value===other_value) to compare the two values, where === is the strict version of == . But what is the real difference? Like what's so much better about === , respectively what advantages does ==

怎么样在==和===在JavaScript?

可能重复: JavaScript === vs ==:这与我使用的“平等”运算符有关吗? JavaScript和==和===之间的区别 正如我们都知道你可以做(value==other_value)或(value===other_value)来比较这两个值,其中===是==的严格版本。 但真正的区别是什么? ===什么更好的,分别==给你什么好处? 同样的!=和!== ? 比较是类型明智的。 '1' == 1是真的。 但是, '1' === 1是错误的。 如果你不知道什么类型的比较会

Should I use == or === In Javascript?

This question already has an answer here: Which equals operator (== vs ===) should be used in JavaScript comparisons? 50 answers Difference between == and === in JavaScript [duplicate] 2 answers Using == compares only the values, === compares the type of the variable also. 1 == 1 -> true 1 == "1" -> true 1 === 1 -> true 1 === "1" -> false, because 1 is an integer and "1" is a

我应该使用==还是===在Javascript中?

这个问题在这里已经有了答案: 应该在JavaScript比较中使用哪个等于运算符(== vs ===)? 50个答案 在JavaScript和=== ===之间的差异[复制] 2个答案 使用==只比较值,===比较变量的类型。 1 == 1 -> true 1 == "1" -> true 1 === 1 -> true 1 === "1" -> false, because 1 is an integer and "1" is a string. 如果必须确定函数是否返回0或false,则需要===,因为0 == false为true,但0 === false为false

What is the difference between != null and !== null?

This question already has an answer here: Difference between == and === in JavaScript [duplicate] 2 answers The answer to the specific question about whether there's ever a case where != and !== comparisons involving null get different answers is yes : undefined != null // false undefined !== null // true The rules for == and != explicitly include a clause that stipulates that null and

!= null和!== null之间有什么区别?

这个问题在这里已经有了答案: 在JavaScript和=== ===之间的差异[复制] 2个答案 关于是否曾经有过一个涉及null !=和!==比较得到不同答案的具体问题的答案是 : undefined != null // false undefined !== null // true ==和!=的规则显式包含一个子句,它规定null和undefined是相同的。 就个人而言 - 就是在我的代码中 - 这个事实是在undefined应该以相同方式处理(这是很常见的情况)的情况下检查null时使用!= (或==

How to check a radio button with jQuery?

I try to check a radio button with jQuery. Here's my code: <form> <div id='type'> <input type='radio' id='radio_1' name='type' value='1' /> <input type='radio' id='radio_2' name='type' value='2' /> <input type='radio' id='radio_3' name='type' value='3' /> </div> </form> And the JavaScript: jQuery("#radio_1").attr('

如何用jQuery检查单选按钮?

我尝试使用jQuery检查单选按钮。 这是我的代码: <form> <div id='type'> <input type='radio' id='radio_1' name='type' value='1' /> <input type='radio' id='radio_2' name='type' value='2' /> <input type='radio' id='radio_3' name='type' value='3' /> </div> </form> 和JavaScript: jQuery("#radio_1").attr('checked', true); 不

How does the "this" keyword work?

I have noticed that there doesn't appear to be a clear explanation of what the this keyword is and how it is correctly (and incorrectly) used in JavaScript on the Stack Overflow site. I have witnessed some very strange behaviour with it and have failed to understand why it has occurred. How does this work and when should it be used? I recommend reading Mike West's article Scope in J

“this”关键字如何工作?

我注意到,似乎并没有清楚地解释this关键字是什么以及它是如何在堆栈溢出网站的JavaScript中正确(和错误地)使用的。 我目睹了一些非常奇怪的行为,并没有理解为什么会发生。 怎么this时候它应该被用来工作? 我建议先阅读Mike West的文章Scope in JavaScript(镜像)。 这是对JavaScript中this和范围链的概念的一个很好的,友好的介绍。 一旦你开始习惯this ,规则其实很简单。 ECMAScript标准this定义为一个关键字

JavaScript: undefined !== undefined?

NOTE: As per ECMAScript5.1, section 15.1.1.3, window.undefined is read-only. Modern browsers implement this correctly. for example: Safari 5.1, Firefox 7, Chrome 20, etc. Undefined is still changeable in: Chrome 14, ... When I recently integrated Facebook Connect with Tersus, I initially received the error messages Invalid Enumeration Value and Handler already exists when trying to call Fa

JavaScript:undefined!== undefined?

注:根据ECMAScript5.1,第15.1.1.3节,window.undefined是只读的。 现代浏览器正确实现了这一点。 例如:Safari 5.1,Firefox 7,Chrome 20等。 未定义的仍然可以更改:Chrome 14,... 当我最近将Facebook Connect与Tersus集成时,我最初收到错误消息Invalid Enumeration Value , Handler already exists在尝试调用Facebook API函数时Handler already exists 。 原来,问题的原因是 object.x === undefined “对象”

When would JavaScript == make more sense than ===?

As Which equals operator (== vs ===) should be used in JavaScript comparisons? indicates they are basically identical except ' === ' also ensures type equality and hence ' == ' might perform type conversion. In Douglas Crockford's JavaScript: The Good Parts, it is advised to always avoid ' == '. However, I'm wondering what the original thought of designing two s

JavaScript ==何时比===更有意义?

在JavaScript比较中应该使用哪个等于运算符(== vs ===)? 表示它们基本相同,除了' === '也确保类型相等,因此' == '可能会执行类型转换。 在道格拉斯克罗克福德的JavaScript中:好的部分,建议总是避免' == '。 但是,我想知道设计两组相等运算符的原始思想是什么。 你有没有看到任何使用' == '比使用' === '更适合的情况? 考虑一下比较数字或字符串的情况: if (4 === 4) {

Send null as a value in ngResource AngularJS

I'm using AngularJS 1.2.1's ngResource and I'm trying to send null as a value in the parameters in a PUT request. Unfortunately, when it is set, Angular will ignore it the parameter and not send it. Here's some example code: var User = $resource('/comments/:id', {id:'@id'}, { destroy: { method: 'PUT', params: {content: null} } }); var user = User.destroy({id:123}, function()

在ngResource AngularJS中将值作为值发送

我使用的是AngularJS 1.2.1的ngResource,我试图在PUT请求中的参数中发送null作为参数。 不幸的是,当它被设置时,Angular会忽略它的参数并且不会发送它。 以下是一些示例代码: var User = $resource('/comments/:id', {id:'@id'}, { destroy: { method: 'PUT', params: {content: null} } }); var user = User.destroy({id:123}, function() {}); Angular会改为忽略content ,不发送密钥或null值。 我如何让Angular发

Why use element[0] instead of element when creating AngularJS directive with d3?

It seems that you have to use element[0] when creating a directive with D3, for example, like below: app.directive('firstTry', function () { function link(scope, element, attrs) { var sampleSVG = d3.select(element[0]) ... So, why element[0] but not element ? The name element suggests that it is a single object rather than an array, but apparently that's not the case. A

为什么在用d3创建AngularJS指令时使用元素[0]而不是元素?

看起来你在用D3创建指令时必须使用element[0] ,例如,如下所示: app.directive('firstTry', function () { function link(scope, element, attrs) { var sampleSVG = d3.select(element[0]) ... 那么,为什么element[0]而不是element ? 名称element表明它是单个对象而不是数组,但显然情况并非如此。 另一个问题:这个element还有什么? 顺便说一句,任何关于此事的官方参考文献都会大有帮助。