用js判断下面数组中是否含有paymentMethod为EPSCO-PPS[ { paymentMethod: "EPSCO-PPS", totalNum: 20, totalPaymentAmount: 6400 }, { paymentMethod: "BOC-FPS", totalNum: 140, totalPaymentAmount: 44800 }, { paymentMethod: "Online Credit Card", totalNum: 40, totalPaymentAmount: 12800 } ]
时间: 2023-07-21 19:11:13 浏览: 51
你可以使用以下代码来判断数组中是否含有paymentMethod为EPSCO-PPS:
```javascript
const arr = [
{
paymentMethod: "EPSCO-PPS",
totalNum: 20,
totalPaymentAmount: 6400
},
{
paymentMethod: "BOC-FPS",
totalNum: 140,
totalPaymentAmount: 44800
},
{
paymentMethod: "Online Credit Card",
totalNum: 40,
totalPaymentAmount: 12800
}
];
const hasEPSCOPPS = arr.some(item => item.paymentMethod === "EPSCO-PPS");
console.log(hasEPSCOPPS); // 输出 true 或 false
```
上述代码使用了数组的 `some` 方法,它会遍历数组中的每个元素,并返回一个布尔值,表示是否有满足条件的元素。在这里,我们判断每个元素的 `paymentMethod` 是否等于 "EPSCO-PPS"。如果存在满足条件的元素,则返回 `true`,否则返回 `false`。
相关问题
const arr = [ { paymentMethod: "EPSCO-PPS", totalNum: 20, totalPaymentAmount: 6400 }, { paymentMethod: "BOC-FPS", totalNum: 140, totalPaymentAmount: 44800 }, { paymentMethod: "Online Credit Card", totalNum: 40, totalPaymentAmount: 12800 } ]查找数组中paymentMethod为EPSCO-PPS的一项,并把这条数据push进新数组,如果没有就push一条新的
你可以使用以下代码来查找数组中paymentMethod为EPSCO-PPS的一项,并将它添加到一个新数组中。如果没有找到,则添加一条新的数据:
```javascript
const arr = [
{
paymentMethod: "EPSCO-PPS",
totalNum: 20,
totalPaymentAmount: 6400
},
{
paymentMethod: "BOC-FPS",
totalNum: 140,
totalPaymentAmount: 44800
},
{
paymentMethod: "Online Credit Card",
totalNum: 40,
totalPaymentAmount: 12800
}
];
const newarr = [];
let found = false;
for (let i = 0; i < arr.length; i++) {
if (arr[i].paymentMethod === "EPSCO-PPS") {
newarr.push(arr[i]);
found = true;
break;
}
}
if (!found) {
newarr.push({
paymentMethod: "EPSCO-PPS",
totalNum: 0,
totalPaymentAmount: 0
});
}
console.log(newarr);
```
上述代码使用了一个循环遍历数组中的每一项,如果找到paymentMethod为EPSCO-PPS的项,则将其添加到新数组newarr中,并将found标志设为true。如果循环结束后仍然没有找到,则添加一条新的数据到newarr中。最后,打印出newarr数组。
判断数组对象中是否有属性等于某个值
要判断数组对象中是否有属性等于某个值,你可以使用以下代码:
```javascript
const arr = [
{
paymentMethod: "EPSCO-PPS",
totalNum: 20,
totalPaymentAmount: 6400
},
{
paymentMethod: "BOC-FPS",
totalNum: 140,
totalPaymentAmount: 44800
},
{
paymentMethod: "Online Credit Card",
totalNum: 40,
totalPaymentAmount: 12800
}
];
const hasPropertyWithValue = arr.some(item => Object.values(item).includes("EPSCO-PPS"));
console.log(hasPropertyWithValue); // 输出 true 或 false
```
上述代码使用了数组的 `some` 方法和 `Object.values` 方法。`some` 方法遍历数组中的每个元素,并返回一个布尔值,表示是否有满足条件的元素。`Object.values` 方法返回对象中所有属性的值组成的数组。在这里,我们判断每个元素的属性值数组是否包含 "EPSCO-PPS"。如果存在满足条件的元素,则返回 `true`,否则返回 `false`。