javascript - 为什么设置的是 undefined 而不是 || 后面的值?

标签 javascript

我有以下代码和日志:

console.log('PROCESS:', process.env.BACKEND_URL)
api.serverUrl = process.env.BACKEND_URL || url[env].backend
console.log('URL:', url[env].backend)
console.log('API:', api.serverUrl)

process.env.BACKEND_URL未定义,因此我期望 api.serverUrl 设置为 url[env].backend .

但是日志显示:

PROCESS: undefined
URL: https://vrbackendus.avosapps.us/api
API: undefined

这是为什么呢?为什么没有将 expected api.serverUrl 设置为 url[env].backend

最佳答案

代码运行良好。问题肯定出在变量的值上。

/*Values i had given to test*/
var process ={};
process.env={};
var api={};
process.env.BACKEND_URL = "undefined";
var url = [];
var env = "test";
url[env] ={};
url[env].backend = "test";
/*****/

console.log('PROCESS:', process.env.BACKEND_URL)
api.serverUrl = (process.env.BACKEND_URL === "undefined" ? url[env].backend : process.env.BACKEND_URL); 
console.log('URL:', url[env].backend)
console.log('API:', api.serverUrl)

更新了代码以响应您的评论,它是“未定义”而不是未定义

关于javascript - 为什么设置的是 undefined 而不是 || 后面的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43509332/

相关文章:

javascript - 即使从父组件传递函数后也无法更改子组件的状态

javascript - 使用nodejs向同一客户端发送不同的数据

javascript - 使用 jquery 和 .submit 捕获表单提交

javascript - 如何将子组件的状态传递给父组件?

Javascript 函数只看到作为参数传入的全局变量的默认值

javascript - 具有警报结果的不同代码。

javascript - 如何读取xml中另一个标签下标签的属性

javascript - 恶意js?或者它是什么

javascript - 行 : 654 error: 'FileReader' is undefined internet explorer 10

javascript - 我可以拖动,但无法删除全日历中的外部事件