Đảo ngược phần tử trong mảng javascript

Phương thức reverse của mảng đảo ngược một mảng bằng cách biến mục cuối cùng thành mục đầu tiên và biến mục đầu tiên thành mục cuối cùng. Các mục khác ở giữa cũng được đảo ngược, tương ứng

Trước khi cho bạn xem các ví dụ về phương thức reverse, hãy để tôi chỉ cho bạn cách đảo ngược một mảng mà không cần sử dụng nó

Tôi có một phiên bản video của bài viết này, bạn cũng có thể kiểm tra

1. Cách đảo ngược một mảng bằng vòng lặp const array = [1, 2, 3, 4] array.reverse() console.log(array) // [ 4, 3, 2, 1 ] 1

Sử dụng vòng lặp

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
1 (hoặc bất kỳ loại vòng lặp nào khác), chúng ta có thể lặp qua một mảng từ lần cuối cùng đến mục đầu tiên và đẩy các giá trị đó sang một mảng mới trở thành phiên bản đảo ngược. Đây là cách

const array = [1, 2, 3, 4]

const reversedArray = []

for(let i = array.length - 1; i >= 0; i--) {
  const valueAtIndex = array[i]
  
  reversedArray.push(valueAtIndex)
}

console.log(reversedArray)
// [4, 3, 2, 1]

Bằng cách sử dụng vòng lặp

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
1, chúng ta bắt đầu lặp từ chỉ mục của giá trị cuối cùng (
const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
4) đến chỉ mục của giá trị đầu tiên (_______15). Sau đó, chúng tôi đẩy các giá trị theo ________ 10

Nhưng có một cách dễ dàng hơn để đảo ngược một mảng, đó là sử dụng phương thức reverse

2. Cách sử dụng const array = [1, 2, 3, 4] array.reverse() console.log(array) // [ 4, 3, 2, 1 ] 2 để đảo ngược một mảng

Bạn có thể sử dụng phương thức reverse, đây là cách tiếp cận dễ đọc/ghi hơn đối với vòng lặp

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
1, để đảo ngược một mảng. Phương pháp này đảo ngược mảng tại chỗ, có nghĩa là mảng mà nó được sử dụng đã được sửa đổi

Hãy xem một ví dụ

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]

Như bạn có thể thấy trong ví dụ này,

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
5 được sửa đổi khi phương thức reverse được áp dụng cho nó

Nếu bạn không muốn sửa đổi

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
5, bạn có thể sao chép nó trước khi áp dụng reverse. Phương thức reverse cũng trả về mảng đảo ngược, vì vậy bạn có thể gán mảng đó cho một biến

Đây là cách sao chép và đảo ngược một mảng

const array = [1, 2, 3, 4]

const reversed = [...array].reverse()

console.log(reversed)
// [ 4, 3, 2, 1 ]

console.log(array)
// [ 1, 2, 3, 4 ]

Sử dụng toán tử trải rộng ở đây, trước tiên chúng tôi sao chép

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
5, sau đó áp dụng phương thức reverse trên bản sao. Mảng đảo ngược được trả về sau đó được trả về biến reverse

Như bạn có thể thấy, bằng cách đăng nhập

const array = [1, 2, 3, 4]

array.reverse()

console.log(array)
// [ 4, 3, 2, 1 ]
5, nó không bị ảnh hưởng vì chúng tôi đã nhân bản nó trước

Cảm ơn vì đã đọc

Vì vậy, nếu bạn cần đảo ngược một mảng, tôi hy vọng bài viết này đã dạy cho bạn điều gì đó

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO


Đảo ngược phần tử trong mảng javascript
Dillion Megida

Người ủng hộ nhà phát triển và Người sáng tạo nội dung đam mê chia sẻ kiến ​​thức của tôi về Công nghệ. Tôi dạy JavaScript / ReactJS / NodeJS / React Frameworks / TypeScript / et al


Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn

Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Trong ví dụ này, chúng ta có một mảng gồm các phần tử kiểu chuỗi, chúng ta sẽ tận dụng mảng. phương thức reverse() để đảo ngược thứ tự phần tử của nó

< script >
   let stdName = ["Joe", "Daniel", "Mike", "Allan", "Joseph"];
   console.log("Mảng đảo ngược. ");
   bảng điều khiển. log( stdName. đảo ngược());
script>

Đoạn mã trên sẽ tạo ra đầu ra sau

Đảo ngược phần tử trong mảng javascript

Đầu ra đã xác minh hoạt động của Array. phương pháp đảo ngược ()

Cách sử dụng vòng lặp for truyền thống để đảo ngược một mảng

Trong JavaScript, chúng ta có thể sử dụng vòng lặp for truyền thống để đảo ngược phần tử của mảng. Phương thức push() có thể được sử dụng trong vòng lặp for. Phương thức push() sử dụng một biến phụ để lưu trữ mảng bị đảo ngược

Ví dụ
Trong ví dụ này, chúng ta sẽ duyệt ngược vòng lặp for i. e. từ cuối đến đầu.

< script >
   stdName = ["Joe", "Daniel", "Mike", "Allan", "Joseph"];
   names = [];
   console.log("Mảng ban đầu. " + stdName );
. for(let i = stdName.độ dài-1; tôi . >= 0; i--)
     {
      names.đẩy( stdName [ i . ]);
    }
    console.log("Mảng đảo ngược. " + tên );
script>

Ở đây, phần tử có mặt ở chỉ mục cuối cùng của mảng sẽ được duyệt trước và vòng lặp for sẽ liên tục duyệt qua mảng cho đến khi nó chạm đến phần tử có mặt ở chỉ mục bắt đầu

Đảo ngược phần tử trong mảng javascript

Đây là cách chúng ta có thể đảo ngược một mảng bằng vòng lặp for

Cách sử dụng Mảng. phương thức unshift() trong JavaScript

Mảng này. phương thức unshift() tương tự như phương thức trên i. e. phương thức unshift(). Nó cũng sử dụng biến phụ để lưu trữ mảng đảo ngược, do đó, mảng ban đầu sẽ không thay đổi

Ví dụ
Hãy xem xét đoạn mã dưới đây để hiểu hoạt động của phương thức unshift trong JavaScript.

< script >
    stdName = ["Joe", "Daniel", "Mike", "Allan", "Joseph"];
    names = [];
    console.log("Mảng ban đầu. " + stdName );
. for(let i = 0; i<= stdName.độ dài-1; tôi . ++)
     {
      names.unshift( stdName [ i . ]);
     }
    console.log("Mảng đảo ngược. " + tên );
script>

Khối mã trên sẽ tạo ra đầu ra sau

Đảo ngược phần tử trong mảng javascript

Đầu ra cho thấy sự phù hợp của Mảng. phương thức unshift()

Sự kết luận

Trong JavaScript, có thể sử dụng nhiều cách tiếp cận khác nhau để đảo ngược một mảng, chẳng hạn như Array. phương thức đảo ngược(), Mảng. phương thức unshift(), vòng lặp for, v.v. mảng. reverse() ghi đè lên mảng đã cho và trả về một mảng bị đảo ngược. Các phương thức push() và unshift() sử dụng biến phụ để lưu trữ mảng bị đảo ngược, do đó, không ảnh hưởng đến mảng ban đầu. Bài viết này giải thích các cách tiếp cận khác nhau để đảo ngược một mảng trong JavaScript. Để hiểu sâu sắc, nó đã giải thích từng phương pháp với sự trợ giúp của một số ví dụ phù hợp