如何在 forEach 循环中获取第一个 key/value 对的值?
How can I get value of first key/value pair in forEach loop?
我有以下 forEach 循环来迭代存储的 jQuery 选择器:
contentExtras = [
{ right: $right_mask, start: aVariable, end: 0 },
{ right: $le, start: 0, end: bVariable },
{ left: $left_mask, start: cVariable, end: 0 }
];
现在我可以做到:
contentExtras.forEach( function( item ) {
item.right.css( { top: item.start } );
} );
或:
contentExtras.forEach( function( item ) {
item.left.css( { bottom: item.start } );
} );
现在我正在寻找一种方法来获取每个 firstkey/value 对的值,而不管它是 "right" 还是 "left".
以我可以做的方式:
contentExtras.forEach( function( item ) {
item.["both left and right"].css( { bottom: item.start } );
} );
我试过类似的东西:item.[0]但没有成功。
这是否充分说明了我的需要?在此先感谢您的帮助!
编辑:
所以这是解决我问题的 Rayon 答案的一部分:
contentExtras.forEach( function( item ) {
item[Object.keys(item)[0]].doThingsWithItsValues()
} );
Use Object.keys()
Or 只是 ||
(逻辑或)运算符
contentExtras = [{
right: '$right_mask',
start: '-rightX',
end: 0
}, {
right: '$le',
start: 0,
end: '-leX'
}, {
left: '$left_mask',
start: '-rightX',
end: 0
}];
contentExtras.forEach(function(item) {
var key = Object.keys(item)[0]; //Get the first key
console.log(item[key])
//OR
console.log(item.left || item.right);
});
我有以下 forEach 循环来迭代存储的 jQuery 选择器:
contentExtras = [
{ right: $right_mask, start: aVariable, end: 0 },
{ right: $le, start: 0, end: bVariable },
{ left: $left_mask, start: cVariable, end: 0 }
];
现在我可以做到:
contentExtras.forEach( function( item ) {
item.right.css( { top: item.start } );
} );
或:
contentExtras.forEach( function( item ) {
item.left.css( { bottom: item.start } );
} );
现在我正在寻找一种方法来获取每个 firstkey/value 对的值,而不管它是 "right" 还是 "left".
以我可以做的方式:
contentExtras.forEach( function( item ) {
item.["both left and right"].css( { bottom: item.start } );
} );
我试过类似的东西:item.[0]但没有成功。 这是否充分说明了我的需要?在此先感谢您的帮助!
编辑:
所以这是解决我问题的 Rayon 答案的一部分:
contentExtras.forEach( function( item ) {
item[Object.keys(item)[0]].doThingsWithItsValues()
} );
Use
Object.keys()
Or 只是 ||
(逻辑或)运算符
contentExtras = [{
right: '$right_mask',
start: '-rightX',
end: 0
}, {
right: '$le',
start: 0,
end: '-leX'
}, {
left: '$left_mask',
start: '-rightX',
end: 0
}];
contentExtras.forEach(function(item) {
var key = Object.keys(item)[0]; //Get the first key
console.log(item[key])
//OR
console.log(item.left || item.right);
});