Hướng dẫn reverse array in javascript using function - đảo ngược mảng trong javascript bằng cách sử dụng hàm

Trong bài viết này, chúng tôi xem xét các phương pháp khác nhau để đảo ngược các phần tử mảng bằng JavaScript.

Mục lục

  • Sử dụng phương pháp ngược
  • Sử dụng một vòng lặp giảm cho vòng lặp
  • Sử dụng phương thức unSHift ()
  • Mà không cần sử dụng một mảng mới hoặc phương thức đảo ngược ()

Sử dụng phương pháp ngược

Sử dụng một vòng lặp giảm cho vòng lặp

Sử dụng phương thức unSHift ()

array.reverse()

Mà không cần sử dụng một mảng mới hoặc phương thức đảo ngược ()

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]

Sử dụng một vòng lặp giảm cho vòng lặp

arr = [1, 2, 3, 4];
arr1 = [];
for (let i = arr.length - 1; i >= 0; i--) {
    arr1.push(arr[i]);
}
console.log(arr1);

//Output: [4, 3, 2, 1]

Sử dụng phương thức unSHift ()

Sử dụng phương thức unSHift ()

arr = [1, 2, 3, 4];
arr1 = [];
arr.forEach(element => {
    arr1.unshift(element)
});
console.log(arr1);

//Output: [4, 3, 2, 1]

Mà không cần sử dụng một mảng mới hoặc phương thức đảo ngược ()

Mà không cần sử dụng một mảng mới hoặc phương thức đảo ngược ()

Như tên cho thấy, phương pháp này đảo ngược thứ tự của các phần tử mảng bằng cách sửa đổi mảng hiện có.

arr = [1, 2, 3, 4];
for (let i = 0; i < Math.floor(arr.length / 2); i++) {
    [arr[i], arr[arr.length - 1 - i]] = [arr[arr.length - 1 - i], arr[i]];
}
console.log(arr);

//Output: [4, 3, 2, 1]

Cú pháp:

Phương thức

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 đảo ngược một mảng tại chỗ và trả về tham chiếu đến cùng một mảng, phần tử mảng đầu tiên hiện trở thành phần cuối cùng và phần tử mảng cuối cùng trở thành phần đầu tiên. Nói cách khác, thứ tự các phần tử trong mảng sẽ được chuyển về hướng ngược lại với điều kiện đã nêu trước đó.
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0
method reverses an array in place and returns the reference to the same array, the first array element now becoming the last, and the last array element becoming the first. In other words, elements order in the array will be turned towards the direction opposite to that previously stated.

Thử nó

Cú pháp

Giá trị trả về

Các tham chiếu đến mảng ban đầu, bây giờ đã đảo ngược. Lưu ý rằng mảng được đảo ngược tại chỗ và không có bản sao nào được thực hiện.

Sự mô tả

Phương thức

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 chuyển các phần tử của đối tượng mảng gọi tại chỗ, biến đổi mảng và trả về một tham chiếu đến mảng.

Phương pháp

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 bảo tồn các khe trống. Nếu mảng nguồn thưa thớt, các chỉ số mới tương ứng của các khe trống sẽ bị xóa và cũng trở thành các khe trống.

Phương pháp

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 là chung chung. Nó chỉ mong đợi giá trị
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
4 có thuộc tính
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
5 và các thuộc tính được khóa. Mặc dù các chuỗi cũng giống như mảng, phương pháp này không phù hợp để được áp dụng trên chúng, vì các chuỗi là bất biến.

Ví dụ

Đảo ngược các yếu tố trong một mảng

Ví dụ sau đây tạo ra một mảng

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
6, chứa ba phần tử, sau đó đảo ngược mảng. Cuộc gọi đến
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 trả về một tham chiếu đến mảng đảo ngược
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
6.

const items = [1, 2, 3];
console.log(items); // [1, 2, 3]

items.reverse();
console.log(items); // [3, 2, 1]

Phương thức đảo ngược () trả về tham chiếu đến cùng một mảng

Phương thức

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 trả về tham chiếu đến mảng gốc, do đó, việc biến đổi mảng được trả về cũng sẽ biến đổi mảng gốc.

const numbers = [3, 2, 4, 1, 5];
const reversed = numbers.reverse();
// numbers and reversed are both in reversed order [5, 1, 4, 2, 3]
reversed[0] = 5;
console.log(numbers[0]); // 5

Trong trường hợp bạn muốn

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 không thay đổi mảng gốc, nhưng trả về một mảng được sao chép nông như các phương thức mảng khác (ví dụ:
arr = [1, 2, 3, 4];
arr1 = [];
for (let i = arr.length - 1; i >= 0; i--) {
    arr1.push(arr[i]);
}
console.log(arr1);

//Output: [4, 3, 2, 1]
1), bạn có thể thực hiện một bản sao nông trước khi gọi ____10, sử dụng cú pháp lan truyền hoặc
arr = [1, 2, 3, 4];
arr1 = [];
for (let i = arr.length - 1; i >= 0; i--) {
    arr1.push(arr[i]);
}
console.log(arr1);

//Output: [4, 3, 2, 1]
3.

const numbers = [3, 2, 4, 1, 5];
// [...numbers] creates a shallow copy, so reverse() does not mutate the original
const reverted = [...numbers].reverse();
reverted[0] = 5;
console.log(numbers[0]); // 3

Sử dụng Reverse () trên các mảng thưa thớt

Mảng thưa thớt vẫn còn thưa thớt sau khi gọi

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0. Các khe trống được sao chép vào các chỉ số mới tương ứng của chúng dưới dạng các khe trống.

console.log([1, , 3].reverse()); // [3, empty, 1]
console.log([1, , 3, 4].reverse()); // [4, 3, empty, 1]

Gọi Reverse () trên các đối tượng không phải là

Phương pháp

arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
0 đọc thuộc tính
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
5 của
arr = [1,2,3,4];
arr.reverse();
console.log(arr);

//Output: [ 4, 3, 2, 1 ]
4. Sau đó, nó truy cập từng chỉ mục giữa
arr = [1, 2, 3, 4];
arr1 = [];
for (let i = arr.length - 1; i >= 0; i--) {
    arr1.push(arr[i]);
}
console.log(arr1);

//Output: [4, 3, 2, 1]
8 và
arr = [1, 2, 3, 4];
arr1 = [];
for (let i = arr.length - 1; i >= 0; i--) {
    arr1.push(arr[i]);
}
console.log(arr1);

//Output: [4, 3, 2, 1]
9 và hoán đổi hai chỉ số tương ứng ở cả hai đầu, xóa các thuộc tính nếu cần.

const arrayLike = {
  length: 3,
  unrelated: "foo",
  2: 4,
};
console.log(Array.prototype.reverse.call(arrayLike));
// { '0': 4, length: 3, unrelated: 'foo' }
// The '2' index is deleted because the '0' index was not present originally

Thông số kỹ thuật

Sự chỉ rõ
Đặc tả ngôn ngữ Ecmascript # sec-array.prototype.reverse
# sec-array.prototype.reverse

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

Làm thế nào để bạn đảo ngược một mảng trong JavaScript?

JavaScript mảng đảo ngược () Phương thức đảo ngược () đảo ngược thứ tự của các phần tử trong một mảng.Phương thức đảo ngược () ghi đè lên mảng gốc.The reverse() method reverses the order of the elements in an array. The reverse() method overwrites the original array.

Làm thế nào để bạn đảo ngược một chức năng trong một mảng?

Cho một mảng (hoặc chuỗi), tác vụ là đảo ngược mảng/chuỗi ...
Khởi tạo chỉ mục bắt đầu và kết thúc khi bắt đầu = 0, end = n-1 ..
SWAP ARR [Bắt đầu] với ARR [end].
Gọi ngược lại ngược lại cho phần còn lại của mảng ..

Đảo ngược () sẽ làm gì trong javascript?

Phương thức đảo ngược () đảo ngược một mảng tại chỗ và trả về tham chiếu đến cùng một mảng, phần tử mảng đầu tiên bây giờ trở thành phần cuối cùng và phần tử mảng cuối cùng trở thành phần đầu tiên.reverses an array in place and returns the reference to the same array, the first array element now becoming the last, and the last array element becoming the first.

Làm cách nào để đảo ngược một mảng trong ES6?

ES6 - Phương thức mảng đảo ngược () Phương thức đảo ngược () đảo ngược phần tử của một mảng.Phần tử mảng đầu tiên trở thành phần cuối cùng và phần cuối cùng trở thành phần đầu tiên.reverse() method reverses the element of an array. The first array element becomes the last and the last becomes the first.