Javascript 删除数组上的某些元素后如何再次使用数组

Javascript 删除数组上的某些元素后如何再次使用数组,javascript,arrays,if-statement,Javascript,Arrays,If Statement,我有一个样本数组: let sampleArray = ["spider", "regards", "sorry"]; 如果我使用If语句并删除其中的一些元素,我如何用新值声明新的示例数组 这是我的代码: let sampleArray = ["banana", "apple", "orange", "grapes"]; //let say the value of "fruits = apple" if(sampleArray.includes(fruits)

我有一个样本数组:

let sampleArray = ["spider", "regards", "sorry"];
如果我使用If语句并删除其中的一些元素,我如何用新值声明新的示例数组

这是我的代码:

let sampleArray = ["banana", "apple", "orange", "grapes"];
     //let say the value of "fruits = apple"       
    if(sampleArray.includes(fruits)){ // will return TRUE, since 'apple' is included in the sampleArray

    //Now, I will remove it on the array
    sampleArray = sampleArray.filter(e => e !== fruits); 
    console.log("sampleArray: ", sampleArray) // return ["banana", "orange", "grapes"]
现在,我如何在同一个if语句中再次应用ifsampleArray.includefruits,以便如果我再次调用它,值现在是[banana,orange,grapes],我的新水果是grapes,以具有新的[banana,orange]数组


这可能吗?我只能使用语句sampleArray.IncludeFruits一次

您可以创建一个函数,该函数接受水果作为参数,然后相应地更改值

让sampleArray=[香蕉、苹果、橘子、葡萄]; 设func=fruits=>{ 如果sampleArray.includeFruits{ sampleArray=sampleArray.filtere=>e!==fruits; console.logsampleArray:,sampleArray } } func‘苹果’
func'orange'您需要为此创建一个函数

试试这个:

让sampleArray=[香蕉、苹果、橘子、葡萄]; 功能不包括水果{ ifsampleArray.includeFruits{ sampleArray=sampleArray.filtere=>e!==fruits; console.logsampleArray:,sampleArray// } } 不包括葡萄吗
DoesIncludeChange您可以创建一个函数,并使用新的fruits值调用它

让sampleArray=[香蕉、苹果、橘子、葡萄]; 函数xfruits{ 如果sampleArray.includeFruits sampleArray=sampleArray.filtere=>e!==fruits; console.logsampleArray:,sampleArray } 让水果=苹果 水果 水果=‘葡萄’
xfruits为什么不使用splice和indexOf

让sampleArray=[香蕉、苹果、橘子、葡萄]; 功能移除,项目{ 让toRemove=arr.indexOfitem; 如果要移动!=-1{ arr.tactivetoremove,1; 返回true; } 返回false; } console.logremovesampleArray,苹果; console.logsampleArray; console.logremovesampleArray,橙色; console.logsampleArray; console.logremovesampleArray,苹果; console.logsampleArray 使用下面的简单代码, 创建了一个名为的函数,该函数接受参数

var sampleArray=[香蕉、苹果、橙子、葡萄]; 函数FROUTSFRUITNAME{//此函数将筛选我们传递的名称,如果名称不在那里,则它将返回所有collectionarray return sampleArray.filtere=>e!==fullname } Frootsbanana//请将商品名称发送至此处,剩余商品将返回。 果冻
//console.logfruitsbanana您可以使用filter方法从数组中删除任何值,以便重用新数组您必须将其存储在新变量中

不更改原始数组

让sampleArray=[香蕉、苹果、橘子、葡萄]; var水果=‘苹果’; ifsampleArray.includeFruits{ 让newArray=sampleArray.filtere=>e!==fruits;//现在假设fruits=apple的值,我将在数组中删除它 console.logafterRemove:,newArray console.logsampleArray:,sampleArray//将返回TRUE,因为sampleArray中包含“apple”
} 您可以使用闭包关闭sampleArray(即:水果),然后调用单个水果项目从水果数组中移除:

常数f=水果=>水果=>{ 如果水果包括水果 水果=水果。过滤器=>e!==水果; 还果; } const removeFruit=f[香蕉、苹果、橘子、葡萄]; 控制台:logremoveFruit'apple';
控制台:logremoveFruit'grapes';你说的一次是什么意思?把它变成一个函数,用水果和数组作为参数。我不清楚你的意思是你想保持你的sampleArray不变吗?为什么不使用splice和indexOf?