【问题标题】:How to include 2 different Variables as Property and Value for a third Variable in Javascript or jQuery如何在 Javascript 或 jQuery 中包含 2 个不同的变量作为第三个变量的属性和值
【发布时间】:2020-09-07 18:39:36
【问题描述】:
var A = $(this).attr("id") //result is a string

var B = $(this).attr("id") //result is another string from a different id

var C = {
 A: B      //I want to use A as Property and B as Value
};

console.log(C) 被创建时,JS 控制台说 A 是未定义的。为什么会这样? //如何在变量 C 中使用 A 作为属性,将 B 作为值作为对象,然后用于 Javascript 和 jQuery? //谢谢。

【问题讨论】:

    标签: javascript jquery object variables properties


    【解决方案1】:

    在属性中使用括号:

    var C = { [A]: B };
    

    【讨论】:

    • 您好,我尝试了您的建议,但 JS Chrome 控制台告诉我 A 未定义。有什么建议可以定义 A 吗?谢谢。
    【解决方案2】:

    您可以使用括号语法来做到这一点:

    var C = {};
    C[A] = B;
    

    或者您可以使用“计算属性名称”ES6 功能:

    var C = { [A]: B };
    

    【讨论】:

    • 您好,我尝试了您的建议,但 JS Chrome 控制台告诉我 A 未定义。有什么建议可以定义 A 吗?谢谢。
    • 你能在 jsfiddle 上发帖或编写完整的脚本来检查它吗?
    【解决方案3】:

    如果我对你的理解正确,你想要实现这样的目标:

    var a = 'something';
    var b = 'else';
    
    // example var c = { something: "else" };
    

    如果是这样,那么无需高级 es6 实验性壮举就非常容易;)

    只是(我使用的是 es6 模板文字 - 但您可以使用普通字符串 concat):

     var c = JSON.parse(`{"${a}":"${b}"}`);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-24
      • 1970-01-01
      • 1970-01-01
      • 2012-07-09
      • 2021-05-03
      相关资源
      最近更新 更多