草庐IT

javascript - !0 和 !1 不仅仅是 true/false 的简写吗?

这个问题在这里已经有了答案:Isthereanypointofusing"return!0"injavascript?(1个回答)关闭6年前。通过阅读一些代码,我发现了!0和!1的用法。我意识到这些是编写true和false的较短方式。!0===true!1===false这当然可以节省几个字节,但是还有其他使用它的原因吗?这种写法有名字吗?

javascript - 为什么 boolean 原语不调用原型(prototype) toString()?

假设我有这段代码:Boolean.prototype.toString=functiontoString(){returnthis.valueOf()?'1':'0';};varobject={true:'true',false:'false',1:'1',0:'0'};//"true"-thisdoesn'tworkconsole.log('primitive',object[true]);//"1"-butthesedoconsole.log('primitive.toString()',object[true.toString()]);console.log('instance'

javascript - 在 JavaScript 中使用命名参数(基于 TypeScript)

我在TypeScript中使用命名参数时遇到问题。我知道它不支持我在TypeScript中使用它的方式。但是我该怎么做呢?typescript:SomeFunction(name1:boolean,name2:boolean,name3:boolean,name4:boolean)//Willoccuronlyonetime,sothechangeshouldbeinTypeScriptJavaScript:$(function(){...SomeFunction({name1:false,name2:false,name3:false,name4:true});//Willoccur

javascript : checking boolean values

我在表单中将一个bool值设置为隐藏变量,并且我有以下javascript。$().ready(function(){varflag=$('#popUpFlag').val();alert("flag="+flag);if(flag){alert("flagistrue");}else{alert("flagisfalse");}})这些是警报的输出。flag=flagisfalseflag=falseflagisfalseflag=trueflagisfalse我关心的显然是第三个输出。当标志为true时,为什么打印“flagisfalse”而不是“flagistrue”。我在IE8

javascript - 确定是否选中了 jQuery 对象中的所有复选框,返回为 boolean 值

大家好。一段时间以来,我一直在努力解决这个问题。我创建了一个复选框的jQuery对象并将其存储在一个变量中:$group1=$('#checkbox1,#checkbox2,#checkbox3,#checkbox4');除非选中该组中的所有复选框,否则用户无法继续。我一直在使用if语句结合.is(':checked')来查找boolean值:if($group1.is(':checked')){//continueisOK}...但是.is(':checked')将返回TRUE如果anycheckboxes在组内被选中。本质上,.is(':checked')对$group1中的选定元

javascript - Javascript 函数中的奇怪行为

这个问题在这里已经有了答案:Whydoesn'taJavascriptreturnstatementworkwhenthereturnvalueisonanewline?(3个答案)关闭7年前。如果我在下面的代码片段中执行测试函数:functionpointInside(r,p){varresult=(p.x>=r.location.x-r.size.width*0.5)&&(p.x=r.location.y-r.size.height*0.5)&&(p.y然后文本“inside”被写入控制台。伟大的。现在,如果我将pointInside函数更改为:functionpointInsid

javascript - 如何过滤掉数组中的 NaN, null, 0, false (JS)

我被要求过滤掉array中的NaN,null,0,false。幸运的是我已经回答了这个问题。functionbouncer(arr){functionfilterer(arr){returnarr>0||isNaN(arr)===true;}arr=arr.filter(filterer);returnarr;}//exampleinputbouncer([0,1,2,3,'ate','',false]);//output[1,2,3,'ate']但问题是我真的不知道我是如何得出答案的,或者更确切地说,我不知道它是如何运作的。特别是在arr>0上,过滤器如何知道arr已在arr[1]、

javascript陷阱: empty list to boolean conversion

为什么都是[]==false和![]==false是真的吗? 最佳答案 ===运算符是您的friend。切勿使用==运算符;它会咬你,如你所见。 关于javascript陷阱:emptylisttobooleanconversion,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1534014/

javascript - 我如何在 Javascript 中比较字符串和 boolean 值?

我从服务器得到了Json"false"。我响应为bool但它是Json,所以它在浏览器中的类型是String而不是bool。因此,如果每当我想检查"false"==false时运行(!data),那么它们就不起作用了。那么如何在JavaScript中从String解析bool呢?"true"==true和"false"==false。然后代码(!data)可以检查它是什么[trueandfalse] 最佳答案 Ifoneoftheoperandsisaboolean,convertthebooleanoperandto1ifitis

javascript .filter() 真 boolean 值

functionbouncer(arr){//Don'tshowafalseIDtothisbouncer.functiona(b){if(b!==false){returnb;}}arr=arr.filter(a);returnarr;}bouncer([7,'ate','',false,9]);我必须只返回trueboolean语句,当我运行这段代码时,它起作用了。但是,我很困惑,因为无论是b!==true还是b!==false,我的“if语句”都会起作用。有人可以解释为什么这两种方式都有效吗? 最佳答案 显然.filter()