相关疑难解决方法(0)

是什么 !!(不是)JavaScript中的运算符?

我看到一些代码似乎使用了一个我无法识别的运算符,以两个感叹号的形式出现,如下所示:!!.有人可以告诉我这个运营商的作用吗?

我看到这个的背景是,

this.vertical = vertical !== undefined ? !!vertical : this.vertical;
Run Code Online (Sandbox Code Playgroud)

javascript operators

2906
推荐指数
32
解决办法
51万
查看次数

JavaScript的隐藏功能?

您认为每个程序员应该知道哪些JavaScript的"隐藏功能"?

在看到以下问题的答案的优秀质量后,我认为是时候向它询问JavaScript了.

虽然JavaScript现在可以说是最重要的客户端语言(只是问谷歌)但令人惊讶的是,大多数网络开发人员都很少理解它的实力.

javascript hidden-features

312
推荐指数
68
解决办法
13万
查看次数

Javascript,切换setInterval

我正在尝试制作一个小脚本,屏幕每100毫秒随机改变它的背景颜色,你可以通过按一个按钮来打开和关闭它.我可以开始,但我无法阻止它.

这是切换的主要代码:

var on = -1;

function change() {
    on = on*-1;
    if (on == true) {
        var light = window.setInterval(disco,100);
    }
    else {
        window.clearInterval(light);
    }
}
Run Code Online (Sandbox Code Playgroud)

disco 是改变背景颜色的功能.

我尝试了很多不同的变化,但我认为这是我得到的最接近的.尽管on变量在1和-1之间正确切换,但现在单击该按钮仅设置另一个间隔.我没有正确使用clearInterval吗?

完整的JSFiddle在这里:http://jsfiddle.net/VZdk9/

我正在尝试练习JavaScript,所以请不要jQuery :)

javascript setinterval clearinterval

2
推荐指数
2
解决办法
4846
查看次数

javascript if(-1){... statement ...}的计算结果为true

我有一个条件,其中0或更多是有效的,负面是无效的.当我在JavaScript/TypeScript中相应地编写代码时,令我惊讶的是它没有像我预期的那样工作.

代码如下.

if (-1) {
  console.log("truthy")
} else {
  console.log("falsy")
}
Run Code Online (Sandbox Code Playgroud)

这将在控制台中打印以下内容.

truthy

它应该是falsy,对吧?

任何帮助,帮助我理解这种行为.我错过了什么?

谢谢

javascript typescript

-5
推荐指数
1
解决办法
55
查看次数