js为对象添加属性?

annItem.filename是变量annotations={};
想为annotations创建属性annItem.filename应该怎么写除了先定义一个变量a=annItem.filename的方法还有其他方法吗?

阅读 19.5k
4 个回答

问题的意思是:
annItem.filename 是一个变量,然后现在有个对象 annotations,你想给这个对象添加一个属性,属性名是 annItem.filename 这个变量的值
吗?
如果是的话:annotations[annItem.filename] = someValue

图片描述

为Object对象动态添加属性和值。

  1. 方法一:
var obj = {}; //或者 var obj=new Object();
var key = "name";
var value = "张三丰"
obj[key] = value;
console.info(obj);
  1. 方法二:
var obj = {};
var key = "name";
var value = "张三丰"
eval("obj.p" + key + "='" + value + "'");
console.info(obj);

方法三:

let obj = {};
const key = "name";
const value = "张三丰";
Reflect.set(obj, key, value);

console.log(obj); //{ name: '张三丰' }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题