主题
replaceOrAppend
替换数组中的项目,如果没有匹配项则追加
基本用法
给定一个项目数组、一个项目和一个标识函数,返回一个新数组,其中项目要么在现有项目的索引处被替换(如果存在),要么被追加到末尾。
ts
import { replaceOrAppend } from 'radash'
const fish = [
{
name: 'Marlin',
weight: 105
},
{
name: 'Salmon',
weight: 19
},
{
name: 'Trout',
weight: 13
}
]
const salmon = {
name: 'Salmon',
weight: 22
}
const sockeye = {
name: 'Sockeye',
weight: 8
}
replaceOrAppend(fish, salmon, f => f.name === 'Salmon') // => [marlin, salmon (weight:22), trout]
replaceOrAppend(fish, sockeye, f => f.name === 'Sockeye') // => [marlin, salmon, trout, sockeye]