| |字符在Javascript中代表什么?事实上,我把它和Nodejs和Passport一起使用
对不起,如果我的问题很傻,但我没有找到任何足够的答案 我创建了一个Facebook登录,只是为了在我的个人页面上进行培训。在互联网上学习时,我发现我需要提供一些Facebook信息,如:| |字符在Javascript中代表什么?事实上,我把它和Nodejs和Passport一起使用,javascript,node.js,Javascript,Node.js,对不起,如果我的问题很傻,但我没有找到任何足够的答案 我创建了一个Facebook登录,只是为了在我的个人页面上进行培训。在互联网上学习时,我发现我需要提供一些Facebook信息,如: clientID: process.env.CLIENT_ID 所以,我想是(例如) 但经过一段时间的努力,我发现正确的方法是 clientID: process.env.CLIENT_ID || '8483843285375325blabla' 那么| |代表什么呢?我们什么时候用?我在其他编程语
clientID: process.env.CLIENT_ID
所以,我想是(例如)
但经过一段时间的努力,我发现正确的方法是
clientID: process.env.CLIENT_ID || '8483843285375325blabla'
那么| |代表什么呢?我们什么时候用?我在其他编程语言中将它用作OR逻辑运算符。
|
是逻辑OR
返回expr1
,如果它可以转换为true
;否则,返回expr2
。因此,当与布尔值一起使用时,如果任一操作数都可以转换为true
,则| |返回true
;如果两者都可以转换为false
,则返回false
||是Javascript或逻辑运算符。这一行:
clientID: process.env.CLIENT_ID || '8483843285375325blabla'
可以理解为:clientId
属性将被分配process.env.CLIENT_ID
的值(如果逻辑上为true)或“8483843285375325blabla”。因此,如果process.env.CLIENT_ID
未设置或设置为false,则将使用'8483843285375325blablabla'
。这是正常情况。但是它的用法在您的上下文中是不同的。它将从左到右开始计算,每当它面对真实值时,它将中断并返回检测到的真实值
var x = null || 0 || undefined || "" || "bringHimHome";
console.log(x) //bringHimHome
从左到右考虑上述代码,所有代码都是假值,因此它将逐个计算最后一个字符串,并返回真实的最终字符串值
var x = null || 0 || undefined || "" || "bringHimHome";
console.log(x) //bringHimHome