Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript对象中的元素未定义_Javascript_Json - Fatal编程技术网

Javascript对象中的元素未定义

Javascript对象中的元素未定义,javascript,json,Javascript,Json,要构造这样的对象,请执行以下操作: params (Object) (defaults to: {}) — Delete — required — (map) Objects — required — (Array<map>) Key — required — (String) Key name of the object to delete. TypeError:无法设置未定义的属性“Key” 我做错了什么 原来在对象的内部只有一

要构造这样的对象,请执行以下操作:

params (Object) (defaults to: {}) —
    Delete — required — (map)
        Objects — required — (Array<map>)
            Key — required — (String) Key name of the object to delete.
TypeError:无法设置未定义的属性“Key”

我做错了什么



原来在
对象的内部只有一个
。我想在
对象
内部放置任意数量的键,以便正确构造对象。如何执行此操作?

数组中有多少对象文字?从您的初始化来看,它只看起来像1。但您使用的是for循环,这意味着您期望的不止一个

该错误意味着无论发生时达到的
i
值是多少,
Objects[i]
都未定义

看起来你需要做点什么

 for(i=0;i<data.keys.length;i++){
    params.Delete[0].Objects.push({Key: data.keys[i]})
 }

for(i=0;iYour
params.Delete[0]。这里的Objects
中只有一个对象,当
i
为1时会发生这种情况。您正在根据另一个具有2个不同长度的循环计算for循环

data.keys
不同于:

params.Delete[0].Objects

这一行只有一个对象,而第一行有多个对象。

因为对象[1]未定义…即使赋值的右侧值错误,也会出现相同的错误。Javascript未能完成整行并抱怨左侧值。我认为该语句必须是
params.Delete[0]。对象[I].Key=data[i] 
。因为您正在循环使用我们不知道的
数据.keys.length
,所以我们无法判断循环迭代的次数。我希望
键的数量与
数据.keys
中的数量相同。我认为
对象的数组将是动态的“Objects数组中有多少个具有Key属性的对象文本?”或者实际上,没有
Key
属性…@Houseman:是的,但是当
i
1
时,
对象[i]
未定义的
对象。您试图将其视为对象。您可能的意思是
.Objects[i]={Key:data.keys[i]};
data.keys
params.Delete[0].Objects