Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.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

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_Angularjs - Fatal编程技术网

Javascript 迭代对象数组并更改多个

Javascript 迭代对象数组并更改多个,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我有一个发送对象的函数,批发商。有一个对象数组,批发商,其中包含多个批发商对象 我需要将刚进来的批发商的订单号增加1,然后找到当前订单为新值的批发商对象并减去1 $scope.wholesalers = []; $scope.downWholesaler = function (wholesaler) { if (wholesaler.id > 0) { var orderNumber = wholesaler.ORDER;

我有一个发送对象的函数,
批发商
。有一个对象数组,
批发商
,其中包含多个
批发商
对象

我需要将刚进来的批发商的订单号增加1,然后找到当前订单为新值的批发商对象并减去1

    $scope.wholesalers = [];
    $scope.downWholesaler = function (wholesaler) {
        if (wholesaler.id > 0) {
            var orderNumber = wholesaler.ORDER;
            var orderBelowNumber = orderNumber + 1;
            angular.forEach($scope.wholesalers, function (myWholesaler) {
                if (myWholesaler.ORDER === orderNumber) {
                    // raise current order +1
                    var add = orderNumber + 1
                    myWholesaler.ORDER = add;
                }
                //setting it
                if (myWholesaler.ORDER === orderBelowNumber) {
                    //lower one with order below number -1
                    var subtract = orderNumber - 1;
                    myWholesaler.ORDER = subtract;
                }
            });
            console.log($scope.wholesalers);
        }
    };
上面我正在做这件事。我通过
$scope.whistalers
增加当前对象的订单号,然后将其旁边的订单号(订单+1)减少一个

但是顺序在下降,下一个对象根本没有改变。我做错了什么?我如何修复它

编辑:没有最新的代码修复:

    $scope.downWholesaler = function (wholesaler) {
        if (wholesaler.id > 0) {
            var add = parseInt(wholesaler.ORDER) + 1

            angular.forEach($scope.wholesalers, function (myWholesaler) {
                if (myWholesaler.ORDER == add) {
                    myWholesaler.ORDER = parseInt(myWholesaler.ORDER) - 1;
                }
            });

            wholesaler.ORDER = add;

            console.log($scope.wholesalers);
        }
    };

为什么要在数组中循环查找订单号等于刚输入订单号的条目?这不是刚进来的订单吗?你为什么还要修改订单号?@Draco18s我想我明白你的意思了。我的if语句使用了错误的对象?我必须在这里修改UI的订单号。
var orderNumber=whistaler.order
如果(mywhistaler.ORDER==orderNumber){…}
是否会有两个订单具有相同的订单号?如果没有,那么为什么不直接修改正在处理的订单呢?@Draco18s很好。但我还需要修改1个其他批发商.order。开始调试:
alert(MyBurgistaler.order+“==”+orderBelowNumber)