[英]How can i remove the object in the array if 2 properties of array objects are equal?
[英]How can i target properties in an array of objects
我正在用香草 JS 构建一个简单的纸牌游戏。
我有一组卡片对象:
let cards = [
{value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"},
{value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"}
]
如何定位cards
中任何索引处的所有cardFace
属性,以便可以在 HTML 文档中显示它们?
我希望我说得通。
您可以使用Array.from方法
let cards = [
{value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"},
{value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"}
];
let result = Array.from(cards, card => card.cardFace);
console.log(result);
您可以直接访问它们:
let cards = [ {value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"}, {value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"} ] console.log(cards[0].cardFace); console.log(cards[1].cardFace);
您也可以在基于索引的for
循环中执行此操作:
let cards = [ {value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"}, {value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"} ]; for (let i = 0; i < cards.length; i++) { console.log(cards[i].cardFace); }
另一种选择是for... of
循环,它在 imo 中更具可读性。 这一个也使用 ES6' Object 解构:
let cards = [ {value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"}, {value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"} ]; for (const { cardFace } of cards) { console.log(cardFace); }
您还可以从只有颜色值的cards
创建一个新数组:
let cards = [ {value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"}, {value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"} ] const colors = cards.map(card => card.cardFace); console.log(colors); // ["🂴", "🃟"]
您可以访问 object 字段。 像这样:
object.field
在您的情况下,您可以使用:
let cards = [ {value: "4", suit: "Hearts", weight: 4, cardFace: "🂴"}, {value: "K", suit: "Clubs", weight: 10, cardFace: "🃟"} ] cards.forEach(card => { console.log(card.cardFace); })
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.