如何从 0 开始重新索引对象
how to reindex object start from 0
我有一个来自以下代码的对象输出如何在 js 中设置从 0 开始的索引?
Object
3: Object
id: 34
type: 0
var obj = {};
var edited = false;
for (var i = 0; i < $(".list").length; i++) {
var data_id = parseInt($(".list").eq(i).attr('data-id'));
var data_type = parseInt($(".list").eq(i).attr('data-type'));
if ((data_type != 0)) {
edited = true;
} else {
edited = false;
}
if (edited == true) {
obj[i] = {};
obj[i]['id'] = data_id;
obj[i]['type'] = data_type;
}
}
console.log(obj);
需要更多的jQuery?
var arr = $(".list").filter(function() {
return $(this).data('type') != 0;
}).map(function() {
return { id : $(this).data('id'), type : $(this).data('type') };
}).get();
小提琴
实际上,如果您想从 0 开始,请使用另一个变量而不是"i"(当您将其用作索引时
,我认为它是 3)。var obj = {};
var edited = false;
var obj_idx = 0;
for (var i = 0; i < $(".list").length; i++) {
var data_id = parseInt($(".list").eq(i).attr('data-id'));
var data_type = parseInt($(".list").eq(i).attr('data-type'));
if ((data_type != 0)) {
edited = true;
} else {
edited = false;
}
if (edited == true) {
obj[obj_idx] = {};
obj[obj_idx]['id'] = data_id;
obj[obj_idx]['type'] = data_type;
obj_idx += 1;
}
}
console.log(obj);
我认为这次 obj 将是这样的:
Object
0: Object
id: 34
type: 0
你可以通过Array.prototype.push.call
将对象伪装成数组,这样你也可以获得副作用:obj.length
。 有点忍者,有点优雅:]
var obj = {};
var edited = false;
for (var i = 0; i < $(".list").length; i++) {
var data_id = parseInt($(".list").eq(i).attr('data-id'));
var data_type = parseInt($(".list").eq(i).attr('data-type'));
if ((data_type != 0)) {
edited = true;
} else {
edited = false;
}
if (edited == true) {
Array.prototype.push.call(obj, {id: data_id, type: data_type});
}
}
我将给出一个非常简单易读的例子。假设您有一个具有以下结构的对象:
Object
0: Object
key: 'some-key'
value: 'some-value'
1: Object
...
然后你可能想从中删除一个条目并重新索引整个事情,这就是我的做法:
// obj is Object from above
const reIndexed = Object.entries(obj).map((element, index) => {
if (parseInt(element[0] != index) {
element[0] = index.toString();
}
return element;
});
相关文章:
- 在JavaScript中通过索引从对象数组中获取值
- Javascript:根据对象的嵌套数组中的值,在数组中查找对象的索引
- “未定义的索引:itemdetails”,当将JSON对象从JavaScript发送到PHP时
- 在知道对象值的情况下,确定数组中JS对象的索引
- 索引IndexedDB中对象中的数组值
- 对象中的索引错误
- 按键查找数组中对象的索引
- 使用Handlebars获取同级JSON数据,其中单个对象没有父索引键,但多个项有一个索引键
- 最新typescript编译器版本(0.9.5)中的可索引对象
- jQuery按索引不一致的值筛选对象
- 对象的角度ng重复索引
- 如何将数组的对象与同一索引组合
- 在Javascript中,有没有一种方法可以用一个语句创建一个索引对象数组
- 如何从 0 开始重新索引对象
- JavaScript - 将两个数组对象合并为一个arr对象,然后遍历每个索引/对象
- Javascript数组索引对象
- 我可以在mongo查询中索引对象吗?
- IndexedDB:索引对象值
- 查找javascript的索引"对象数组"基于对象字段值
- 在javascript中创建两个数组的字符串索引对象