Javascript 如何迭代(对于obj中的键)开始中间位置
我有一个目标:Javascript 如何迭代(对于obj中的键)开始中间位置,javascript,Javascript,我有一个目标: let obj = { 1: 'one', 2: 'two', 3: 'three', 7: 'seven' } 是否有机会从第3个位置开始迭代,如下所示: for (let key = 3 in obj) { console.log(obj[key]) // An output will be 'three' and 'seven' } 我需要以最快的方式完成此操作,因为obj非常巨大如果键小于3,您可以使用continue跳过迭代
let obj = {
1: 'one',
2: 'two',
3: 'three',
7: 'seven'
}
是否有机会从第3个位置开始迭代,如下所示:
for (let key = 3 in obj) {
console.log(obj[key]) // An output will be 'three' and 'seven'
}
我需要以最快的方式完成此操作,因为obj非常巨大如果键小于
3
,您可以使用continue
跳过迭代:
让obj={
1:"一",,
二:"两",,
三:"三",,
7:‘七’
};
for(让[key,val]的Object.entries(obj)){
如果(键<3){
继续;
}
控制台日志(val);
}
您可以通过多种方式实现这一点。一种算法是将对象转换为数组。然后确定中点
let obj = {
1: 'one',
2: 'two',
3: 'three',
7: 'seven'
}
Object.entries(obj).forEach(([key, value], index, array) => {
const split = array.length/2
const midPoint = split % 2 == 0 ? split : Math.floor(split)
if(index >= midPoint){
console.log(key)
}
})
用一种简单的方法来做
let obj = {
1: 'one',
2: 'two',
3: 'three',
7: 'seven'
};
// make sure that your case is in order
// get keys of your object
const keys = Object.keys(obj);
// find index of starting key
const index = keys.indexOf('3');
// make sure index >= 0
// each all keys from starting key to the end by old school way
for (let i = index; i < keys.length; i++) {
var key = keys[i];
console.log(obj[key]);
}
让obj={
1:"一",,
二:"两",,
三:"三",,
7:‘七’
};
//确保你的箱子是整齐的
//获取对象的关键点
常量键=对象键(obj);
//查找起始键的索引
const index=keys.indexOf('3');
//确保索引>=0
//每把钥匙从开始钥匙到结束都是用老式的方式
for(设i=index;i
这附带了一个大警告:javascriptOh-man中不保证对象属性的顺序。我真的需要拿起一本面向对象的js书@charlietfl:/