当前位置: 首页 > 面试题库 >

JavaScript用动态键创建对象

仲鸿风
2023-03-14
问题内容

首先,我使用Cheerio进行一些DOM访问并使用Node.js进行解析。美好的时光。

情况如下:

我具有创建对象所需的功能。该对象为其键和值使用变量,然后返回该单个对象。例:

stuff = function (thing, callback) {
  var inputs  = $('div.quantity > input').map(function(){
    var key   = this.attr('name')
     ,  value = this.attr('value');

     return { key : value }
  })

  callback(null, inputs);
}

它输出:

[ { key: '1' }, { key: '1' } ]

.map()返回对象fyi的数组)

key实际上需要成为的字符串this.attr('name')

考虑到我要做什么,在Java中将字符串分配为键的最佳方法是什么?


问题答案:

在JavaScript 的新ES2015标准(以前称为ES6)中,可以使用计算键创建对象Object Initializerspec

语法为:

var obj = {
  [myKey]: value,
}

如果应用于OP的场景,它将变成:

stuff = function (thing, callback) {
  var inputs  = $('div.quantity > input').map(function(){
    return {
      [this.attr('name')]: this.attr('value'),
    };
  })

  callback(null, inputs);
}

注意:浏览器兼容性仍需要使用Transpiler 。

在早期的JavaScript规范(ES5和更低版本)中,对象文字中的键始终按字面意义解释为字符串。

要使用“动态”键,必须使用方 括号表示法

var obj = {};
obj[myKey] = value;

在您的情况下:

stuff = function (thing, callback) {
  var inputs  = $('div.quantity > input').map(function(){
    var key   = this.attr('name')
     ,  value = this.attr('value')
     ,  ret   = {};

     ret[key] = value;
     return ret;
  })

  callback(null, inputs);
}


 类似资料:
  • 我试图从字符串数组中创建一个新对象,但无法正确创建所需的对象。 我正在尝试创建一个对象,比如: 这是我的代码: null null

  • 问题内容: 我正在尝试类似的方法,但是此示例不起作用。 如何制作这样的动态密钥? 问题答案: 方括号: 在JavaScript中,所有数组都是对象,但并非所有对象都是数组。主要区别(而且很难用直接的JavaScript和普通对象来模仿)数组实例维护该属性,以便它反映一个加属性名称的数字值,该属性的名称是数字,并且在转换为数字时其值,是所有此类属性中最大的。这听起来很奇怪,但它只是意味着给定一个数组

  • 问题内容: 如何在javascript关联数组中动态创建键? 到目前为止,我发现的所有文档都是更新已创建的密钥: 我有这样的字符串 我想结束这样的事情: 那就是我分割字符串并获取第一个元素,然后将其放入字典中。 码 问题答案: 使用第一个示例。如果密钥不存在,它将被添加。 将弹出一个包含“ oscar”的消息框。 尝试:

  • 我试图使用wro4j创建这个基础结构,用户可以通过它来决定绑定哪些js文件,只需编辑模板,而不需要接触任何Java代码。因此,像http://.../bundle/scrip1.js/scrip2.js/script3.js/script4.js这样的请求将返回一个按要求顺序包含所有四个脚本的包。 但是,必须事先以xml或自定义WroModelFactory实现指定具有资源的组,这仍然不能提供足够

  • 本文向大家介绍javascript 动态创建表格,包括了javascript 动态创建表格的使用技巧和注意事项,需要的朋友参考一下 第二种方法:

  • 我正在使用JOOQ(JOOQ中的新手)在spring boot项目中使用Rest API在运行时创建数据库。在其中一种情况下,我需要创建一个具有复合主键的表,该主键可以是多个列的组合。我使用下面的代码创建约束- 我已经有