Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在不带临时变量的数组中交换项目_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 在不带临时变量的数组中交换项目

Javascript 在不带临时变量的数组中交换项目,javascript,jquery,arrays,Javascript,Jquery,Arrays,嗨,我有以下目标: myList = { Items: [ { ID: 1, Name: "last" }, { ID: 2, Name: "before last" },

嗨,我有以下目标:

        myList = {
            Items: [
                {
                    ID: 1,
                    Name: "last"
                },
                {
                    ID: 2,
                    Name: "before last"
                },
                {
                    ID: 3,
                    Name: "second"
                }, 
                {
                    ID: 4,
                    Name: "first"
                }
            ]
        };
我的数组现在的顺序是:1、2、3和4

现在,我想将ID==4的项与第一个项(ID==1)交换,将ID==3的项与第二个项(ID==2)交换。是否有一种方法可以在不使用一些临时变量的情况下执行此操作?所以我可能会说,将ID==4的项放在第一个索引上,另一个会自动向下移动,不会被覆盖?如果没有临时变量没有任何方法,那么我应该如何最好地使用这些临时变量呢


谢谢和干杯

您可以使用一个新的数组来交换您喜欢的元素

myList.Items = [myList.Items[3], myList.Items[2], myList.Items[1], myList.Items[0]];
或使用

reverse()
方法反转在位数组。第一个数组元素变为最后一个,最后一个变为第一个


你可以使用一个新的数组来交换你喜欢的元素

myList.Items = [myList.Items[3], myList.Items[2], myList.Items[1], myList.Items[0]];
或使用

reverse()
方法反转在位数组。第一个数组元素变为最后一个,最后一个变为第一个

myList={
项目:[
{
ID:1,
姓名:“最后”
},
{
ID:2,
姓名:“上次之前”
},
{
ID:3,
姓名:“第二”
}, 
{
ID:4,
姓名:“第一”
}
]
};
console.log(myList);
myList={Items:myList.Items.reverse()};
console.log(myList)
myList={
项目:[
{
ID:1,
姓名:“最后”
},
{
ID:2,
姓名:“上次之前”
},
{
ID:3,
姓名:“第二”
}, 
{
ID:4,
姓名:“第一”
}
]
};
console.log(myList);
myList={Items:myList.Items.reverse()};
console.log(myList)试试这个

myList.Items = myList.Items.reverse();

试试这个

myList.Items = myList.Items.reverse();


只要将数组反转,就可以将顺序从1,2,3改为4,3,2,1,4@Rishi我怎样才能反转它?@Rishi我找到了,myList.Items.reverse()-谢谢,干杯。你有没有考虑过lodash:只要反转数组,你想要从1,2,3到4,3,2,1的顺序,4@Rishi我怎样才能反转它?@Rishi我找到了,myList.Items.reverse()-谢谢,干杯。您是否考虑过lodash: