Hướng dẫn reverse element in array javascript - đảo ngược phần tử trong mảng javascript

Phương thức reverse() đả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 đó.reverse() 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 reverse() 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 reverse() 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 reverse() là chung chung. Nó chỉ mong đợi giá trị this có thuộc tính

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
0 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

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
1, chứa ba phần tử, sau đó đảo ngược mảng. Cuộc gọi đến reverse() trả về một tham chiếu đến mảng đảo ngượ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
1.

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 reverse() 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 reverse() 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ụ:

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
6), bạn có thể thực hiện một bản sao nông trước khi gọi reverse(), sử dụng cú pháp lan truyền hoặ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
8.

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 reverse(). 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 reverse() đọc thuộc tính

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
0 của this. Sau đó, nó truy cập từng chỉ mục giữa
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
3 và
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
4 và trao đổ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

Phương pháp đảo ngược trong JavaScript là gì?

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.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 đó.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.

Cách hiệu quả nhất để đảo ngược một mảng JavaScript là gì?

Reversion () nếu bạn muốn tại chỗ hoặc mảng.Slice (). Reversion () nếu bạn muốn một bản sao.Các LIB tiêu chuẩn đã có khả năng là nhanh nhất, chắc chắn là sạch nhất để hiểu và tốc độ của chúng tăng miễn phí khi chúng được tối ưu hóa theo thời gian. slice(). reverse() if you want a copy. Standard libs are already likely to be fastest, are undoubtedly cleanest to understand, and their speed increases for free as they're optimized over time.

Sự đảo ngược mảng là gì?

Mặt trái của một mảng có nghĩa là thay đổi thứ tự của các phần tử của mảng đã cho.Kỹ thuật này đảo ngược phần tử cuối cùng của mảng vào phần đầu tiên và phần tử đầu tiên trở thành phần cuối cùng.Tuy nhiên, quá trình tiếp tục cho đến khi tất cả các ký tự hoặc phần tử của mảng được đảo ngược hoàn toàn.to change the order of the given array's elements. This technique reverses the last element of the array into the first one, and the first element becomes the last. However, the process continues until all characters or elements of the array are completely reversed.