iT邦幫忙

2022 iThome 鐵人賽

DAY 10
0

更多用法

FIND

  1. 可以將值提取出來
  2. 尋找第一筆合適的資料

例 ❶ (篩選會回傳篩選合適的第一個值)

const arr = [1, 5, 50];
const newArr = arr.find(function (item) {
    return item >= 5;
})

findIndex

例 ❶

             ?       ?      ?
const arr = ['blue', 'red', 'yello'];
const newArr = arr.findIndex(function (item) {
    return item == 'blue';
})

例 ❷

const data = [
    {
        name: "小花",
        orders: '132242342'        
    }, {
        name: "小㓬",
        orders: '165265222'
    }
]
const newOd = data.findIndex(function (item) {
    return item.orders == '132242342';
})
console.log(`這筆訂單是${data[newOd].name}的`);

const people = [
    {
        name: 'denny',
        order: '鍋燒意麵',
        price: 80
    },
    {
        name: '小明',
        order: '牛肉麵',
        price: 120  
    },
    {
        name: '漂亮阿姨',
        order: '滷味切盤',
        price: 40 
    },
    {
        name: 'Ray',
        order: '大麻醬乾麵',
        price: 60 
    }
]
  1. 請一一列出每個人的訂單
people.forEach(function(obj, key) {
  // console.log(obj, key);
});
  1. 小明看到今天有打八折!!,請將所有訂單新增一個新價格,金額是 80%

forEach

const newOrders = [];
people.forEach(function(obj, key) {
    newOrders[key] = {
        ...obj,
        newPrice: obj.price * 0.8;
    }
});

console.log(newOrders);
  1. 老闆說,今天疫情沒有八折啦,不過 80 元的可以給滷蛋
const newOrders2 = [];
people.forEach(function(item, index) {
    if (item.price >= 80) {
        newOrders2.push(item)
    }
});

上一篇
陣列操作
下一篇
forEach 陣列資料處理
系列文
JavaScript亂記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言