Как мне поменять местами два элемента в массиве observableArray?

У меня есть кнопка, которая перемещает элемент на одну позицию влево в observableArray. Я делаю это следующим образом. Однако недостатком является то, что category () [index] удаляется из массива, что исключает любые манипуляции с DOM (путем проверки jQuery в моем случае) на этом узле.

Есть ли способ поменять местами два элемента без использования временной переменной, чтобы сохранить узел DOM?

<code>    moveUp: function (category) {
        var categories = viewModel.categories;
        var length = categories().length;
        var index = categories.indexOf(category);
        var insertIndex = (index + length - 1) % length;

        categories.splice(index, 1);
        categories.splice(insertIndex, 0, category);
        $categories.trigger("create");
    }
</code>

Ответы на вопрос(4)

Ваш ответ на вопрос