Javascript 如何使对象键依赖于同一对象中的另一个键?

Javascript 如何使对象键依赖于同一对象中的另一个键?,javascript,enumerate,Javascript,Enumerate,我有一个非常简单的函数,它构建一个对象并记录它 对象中的一个关键点应依赖于另一个关键点 我想当我添加代码时会更清楚 module.exports = function (information) { var numObj = { [-1]: "accepted", [0]: "fail", [1]: "success" } console.log(numObj) var ip = require('ip');

我有一个非常简单的函数,它构建一个对象并记录它

对象中的一个关键点应依赖于另一个关键点

我想当我添加代码时会更清楚

module.exports = function (information) {

    var numObj = {
        [-1]: "accepted",
        [0]: "fail",
        [1]: "success"
    }
    console.log(numObj)

    var ip = require('ip');
        var logObj = {
            UUID: information.UUID, // get from outside
            FN_TIME_STAMP: information.FN_TIME_STAMP, // not sure if necessary
            FN_CORRELATION_ID: information.FN_CORRELATION_ID,// get from outside
            FN_REF_ID: information.FN_REF_ID, //get from outside
            FN_METHOD_NAME: "docToMail", // constant
            FN_STATUS_CODE: information.FN_STATUS_CODE, //get from outside
            FN_STATUS_DESC: numObj[this.FN_STATUS_CODE], // depends on FN_STATUS_CODE
            FN_DOC_ID: information.FN_DOC_ID, //get from outside
            FN_USER_NAME: "", // empty for now, probably un-necessary
            FN_APP_ID: information.FN_APP_ID, //get from outside
            FN_RMT_ADDRS: ip.address(),//ip address of local machine
            FN_NUM_OF_RETRIES: information.FN_NUM_OF_RETRIES, // get from outside
            FN_FILETYPE: information.FN_FILETYPE, // get from outside
            FN_REC_STATE: numObj[this.FN_STATUS_CODE] //depends on FN_STATUS_CODE
        }
        console.log(logObj)
}
我只希望FN_REC_STATE和FN_STATUS_DESC是一个字符串,具体取决于FN_状态代码。 如果是-1,我希望字符串被“接受” 如果为0,我希望字符串为“fail” 如果是1,我希望字符串为“success”

因为现在我还没有定义,请帮忙


谢谢

假设
信息.FN\u STATUS\u code
-1
0
1
,以下解决方案应该有效

如果你改变

FN_REC_STATE: numObj[this.FN_STATUS_CODE]

然后它应该将正确的值放入
FN\u REC\u状态

这是因为在评估故障线路时,
This.FN\u STATUS\u code
尚未定义

您还应该为
FN\u STATUS\u DESC
的定义更改此选项


此外,您可能误解了该函数上下文中的
所指内容。它实际上是指全局对象,而不是
logObj
对象。

假设
信息。FN\u STATUS\u code
-1
0
1
,以下解决方案应该可以工作

如果你改变

FN_REC_STATE: numObj[this.FN_STATUS_CODE]

然后它应该将正确的值放入
FN\u REC\u状态

这是因为在评估故障线路时,
This.FN\u STATUS\u code
尚未定义

您还应该为
FN\u STATUS\u DESC
的定义更改此选项


此外,您可能误解了该函数上下文中的
所指内容。它实际上指的是全局对象,而不是
logObj
对象。

谢谢!工作完美。感觉好像我在这里放了个脑屁。再次感谢,我会尽快标记答案!没问题!很高兴我能帮忙。很抱歉,我的回答很直截了当,我通常喜欢笑脸之类的东西,但这通常不适合StackOverflow,我会被训斥哈哈。祝你好运,你的代码!非常感谢。工作完美。感觉好像我在这里放了个脑屁。再次感谢,我会尽快标记答案!没问题!很高兴我能帮忙。很抱歉,我的回答很直截了当,我通常喜欢笑脸之类的东西,但这通常不适合StackOverflow,我会被训斥哈哈。祝你好运,你的代码!