我是node.js和Express的新手,所以,我有点想知道req.url.indexOf()
的结果/回报是什么。
例如,我在Express示例中看到过这段代码。
if(req.url.indexOf('admin') >= 0)
和if(req.url.indexOf('/admin') >= 0)
表示“您是否拥有管理员授权?”我想。
但是,据我所知,零表示false
,正数表示true
。也许req.url.indexOf()
的返回值与我所知道的不同。
请帮帮我!
答案 0 :(得分:2)
req.url
是一个包含当前请求的网址路径的字符串。
indexOf()
是String.prototype.indexOf
,它返回字符串中子字符串的索引(如果找不到子字符串,则返回-1)。
此代码......
req.url.indexOf('admin') >= 0
...检查当前请求的网址是否包含字符串' admin' (如果是,则评估为true
)。
答案 1 :(得分:1)
indexOf(' sth')是String上的一个方法,用于搜索子字符串开头的索引。
如果找到子字符串,则返回索引> = 0.如果不是,则返回-1。
> var t = "foobar"
undefined
> t.indexOf('ba')
3
> t.indexOf('lol')
-1