当前位置:  开发笔记 > 编程语言 > 正文

真实用例动态(计算)属性

如何解决《真实用例动态(计算)属性》经验,为你挑选了2个好方法。

动态属性:

var obj = {
  // Computed (dynamic) property names
  [ 'prop_' + (() => 42)() ]: 42
};

这当然非常花哨.但有人可以在哪里使用它而不增加不必要的复杂性



1> SLaks..:

如果您将属性名称作为常量:

var obj = { [SOME_CONSTANT]: 42 };



2> Juan Mendes..:

我想要的一个案例是基于Java类在生成的文件中定义了JSON的属性名称.

// Generated
var SomeJsonBodyParams = {NAME: 'name', ID: 'id', ETA, 'estimatedTimeOfArrival'};

// Using it
sendAjax('some/url', {
    [SomeJsonBodyParams.NAME] = userData.name,
    ...
});

我们甚至有一种方法,所以我们可以做到这一点

function makeObj() {
  var obj = {};
  for (var i=0; i < arguments.length; i+=2) {
      obj[i] = obj[i+i];
  }
  return obj;
}

sendAjax('some/url', makeObj(
    SomeJsonBodyParams.NAME, userData.name,
    ...
));

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有