gui*_* 桂林 9 javascript node.js
我查看了express的代码,看到这段代码 https://github.com/visionmedia/express/blob/master/lib/application.js#L490
if ('all' == envs || ~envs.indexOf(this.settings.env)) fn.call(this);
Run Code Online (Sandbox Code Playgroud)
~之前的意思是什么envs
如果你想知道为什么在这种情况下使用它,它是一个简写,找出indexOf方法是否找到了什么.
indexOf当它没有找到某些东西时返回-1,当它没有时返回> = 0.所以当你做~~你得到0(一个假值),当你做任何其他事情时,你得到一个真正的价值.
所以:
if( ~str.indexOf( "something" ) ) {
...
}
Run Code Online (Sandbox Code Playgroud)
是一种较短的说法
if( str.indexOf( "something" ) !== -1 ) {
...
}
Run Code Online (Sandbox Code Playgroud)
如果你想知道如何-1是0的NOT,那么请阅读这里
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |