我正在使用Web应用程序,因此需要一个数组。该数组包含对象。我需要使用for循环检查该数组中的所有元素,如果其中一个满足条件,请将该元素用作我需要对该元素执行的操作,然后将其放置在数组中的最后一个位置。像这样:
let myArray = [{obj1}, {obj2}, {obj3}, {obj4}, {obj5}];
例如,如果{obj3}
满足所有条件,我需要将其放置在最后,就像这样,因此数组如下所示:
myArray = [{obj1}, {obj2}, {obj4}, {obj5}, {obj3}];
{obj1}
满足所有条件:
myArray = [{obj2}, {obj4}, {obj5}, {obj3}, {obj1}];
等
答案 0 :(得分:1)
有了索引后,您可以使用Array#splice
和Array#push
来获取项目并将项目推入数组。
array.push(...array.splice(index, 1))
答案 1 :(得分:0)
您可以filter除去该特定值以外的其他值,然后将该值放在末尾,
此示例正在考虑数组中所有值都是唯一的
let arr = [0,1,2,3,4,5,6,7,8,9]
let findAndPlaceAtLast = (value) =>{
let temp = arr.filter(e=> e!=value)
return [...temp,value]
}
console.log(findAndPlaceAtLast(4))
console.log(findAndPlaceAtLast(2))
如果有多个匹配条件的值,则根据所需的输出,您可以选择一个索引(或什至不止一个)来删除过滤器数组,并以与上述示例类似的方式在末尾添加值< / p>
答案 2 :(得分:0)
您可以尝试以下示例
arr = [1,2,3,4,5,6];
console.log(arr);
ele = arr[1] //save match element in a variable
arr.splice(1, 1); //splice array and remove that element
console.log(arr);
arr.push(ele); // push element in array again
console.log(arr);