我有此数据:
ngOnInit() {
this.generalDetailForm.controls['date_of_delivery'].patchValue("16/11/2011")
}
为了获得条目数...在上面的示例中,该数量应为1,我添加了以下代码:
{id: "001", name="name 1", lastname="lastname 1", active="0"}
这将返回4而不是1。
我在这里做错了什么?在这里输入代码
答案 0 :(得分:1)
当然,这是Object.keys()
的预期行为,因为它返回传递的object
的属性数组。但您期望此类对象的数组长度。
例如:-
let arr = [
{id: "001", name="name 1", lastname="lastname 1", active="0"},
];
console.log(arr.length); // It outputs 1
答案 1 :(得分:0)
Object.keys()
方法返回给定对象自己的数组 财产
签出-https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
答案 2 :(得分:0)
int main()
{
TheSecondVeryBestClassEverMade bodyOder("Mambo Number 5 is my jam baby!");
bodyOder.printName();
return 0;
}
这将返回一个包含对象中所有键的数组。
所以Object.keys(data)
返回Object.keys(data)
,因此当返回数组的访问长度属性时,您得到['id', 'name', 'lastname', 'active']
。
在这种情况下,我需要得到1 ...因为{id:“ 001”,name =“ name 1”, lastname =“ lastname 1”,active =“ 0”}是1个条目
4
返回包含对象的所有键的数组,并且每个键都存储在返回的数组的索引中,因此在这种情况下,您将不会获得Object.keys(object1)
作为返回值。 / p>
您可以做的是创建一个空数组,并将1
返回的数组推入新创建的空数组中。现在,返回的数组将作为新数组中的一项插入。
Object.keys(object1)
以上代码将返回const object1 = {id: "001", name:"name 1", lastname:"lastname 1", active:"0"};
const array = [];
array.push(Object.keys(object1));
console.log(array.length);
。
答案 3 :(得分:0)
这将返回4而不是1,因为您的data
不是数组。
var arrays = [];
var data = {"id": "001", "name"="name 1", "lastname"="lastname 1", "active"="0"};
arrays.push(data);
console.log(array.length);// will print 1
和
Object.keys(data).length // will return 4