Javascript 在运行时为对象创建属性
我试图为如下所示的对象创建属性,但如果我键入object.keys(window.data),则对象名为DENTAL[object object] 方法如下:Javascript 在运行时为对象创建属性,javascript,object,properties,Javascript,Object,Properties,我试图为如下所示的对象创建属性,但如果我键入object.keys(window.data),则对象名为DENTAL[object object] 方法如下: function GetAppliedFilterValue(TabName, filter) { //TabName="DENTAL", filter.CoverageId = 10 var property = TabName.concat(String(filter.CoverageId)); window.dat
function GetAppliedFilterValue(TabName, filter) { //TabName="DENTAL", filter.CoverageId = 10
var property = TabName.concat(String(filter.CoverageId));
window.data[property.toString()] = {};
function GetAppliedFilterValue(TabName, filter) {
var property = TabName + String(filter.CoverageId);
window.data[property.toString()] = {};
我哪里做错了
另外,对象过滤器的coverageId属性是Numbertype谢谢@Bergi,你的建议帮助我成功了 我的实现:
function GetAppliedFilterValue(TabName, filter) { //TabName="DENTAL", filter.CoverageId = 10
var property = TabName.concat(String(filter.CoverageId));
window.data[property.toString()] = {};
function GetAppliedFilterValue(TabName, filter) {
var property = TabName + String(filter.CoverageId);
window.data[property.toString()] = {};
也可以尝试在concat中使用.toString()。Smthing-like
var-property=TabName.concat(filter.CoverageId.toString())代码>我怀疑是否像您那样使用String()done@SaurabhTiwari没有。toString()不起作用此创建对象键的语法采用类似于window.data[“property”]的字符串。你能试着控制属性变量看看它到底是什么吗?也可以试着用typeof来确定它的类型。。。它应该是一个字符串。“对象筛选器的Coverage ID属性是数字类型”-嗯,不,数字不会产生[对象对象]
选项卡名
是一个字符串,对吗?没有理由使用concat
then甚至property.toString()
。只要window.data[TabName+String(filter.CoverageId)]
就足够了。