我想知道如何从包含多个值的对象中删除特定值
这就是我的对象的样子
{
'how can i change my password?': [
'how can I change my password?',
'how may I change my password?',
'how am I able to change my password?'],
'how do i change my password?': [
'how may I change my password?',
'how can I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?']
}
我想做的是搜索如何更改我的密码值,每当我找到它我想删除这个值。
如果稍微搜索一下,我发现的只是使用delete删除整个对象或删除一个完整的属性,但这不是我想要的。 我只想从一个数组中删除一个值。
预期产出:
{
'how can i change my password?': [
'how may I change my password?',
'how am I able to change my password?'],
'how do i change my password?': [
'how may I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?']
}
使用object.Entries
迭代对象,然后使用Array.filter
筛选出您想要/不想要的内容:
null
let obj = {
'how can i change my password?': [
'how can I change my password?',
'how may I change my password?',
'how am I able to change my password?'
],
'how do i change my password?': [
'how may I change my password?',
'how can I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?'
]
}
for (let [key, val] of Object.entries(obj))
obj[key] = val.filter(
v => v !== 'how can I change my password?'
);
console.log(obj);
你可以试试这个。 循环遍历所有键并使用过滤器。
const obj = {
'how can i change my password?': [
'how can I change my password?',
'how may I change my password?',
'how am I able to change my password?'],
'how do i change my password?': [
'how may I change my password?',
'how can I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?']
}
Object.keys(obj).forEach(key => {
obj[key] = obj[key].filter(value => value != 'how can I change my password?')
})
console.log(obj)
我只想从一个数组中删除一个值。
如果只想从数组中移除一个值,并且知道它的索引,则可以使用splice方法移除数组中的特定索引。
const obj = {
'how can i change my password?': [
'how can I change my password?',
'how may I change my password?',
'how am I able to change my password?'],
'how do i change my password?': [
'how may I change my password?',
'how can I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?']
}
obj['how can i change my password?'].splice(1, 1);
// obj is now
{
'how can i change my password?': [
'how can I change my password?',
'how am I able to change my password?'],
'how do i change my password?': [
'how may I change my password?',
'how can I change my password?',
'how should I change my password?',
'how would I change my password?',
'how do I change my password?']
}