Javascript mảng bảng chữ cái

Trong bài này chúng ta sẽ tìm hiểu hàm sắp xếp trong javascript, đây là hàm dùng để sắp xếp các phần tử trong chính mảng đó, đồng thời sẽ đưa ra kết quả sắp xếp đó vào một mảng mới

Nội dung chính Hiển thị

  • 1. Hàm sắp xếp trong javascript là gì?
  • 2. Các ví dụ về hàm sắp xếp mảng trong javascript
  • Video learning setting per day
  • Sử dụng sort[] có sự phân biệt chữ hoa và thông thường
  • Sắp xếp số mảng JavaScript
  • Sắp xếp một mảng với định dạng Date
  • Sắp xếp mảng đối tượng javascript theo khóa
  • Sắp xếp mảng đối tượng javascript theo nhiều khóa

Bài viết này đã được đăng tại freetuts. net , không được sao chép dưới mọi hình thức.

Thứ tự sắp xếp mặc định được tính là tăng dần. Tuy nhiên, bạn có thể truy cập vào quá trình sắp xếp bằng cách truyền vào nó một hàm gọi lại. Trước khi vào học cú pháp thì hãy xem ví dụ dưới đây

mảng. loại[]

const months = ['March', 'Jan', 'Feb', 'Dec'];
months.sort[];
console.log[months];
// output: Array ["Dec", "Feb", "Jan", "March"]

const array1 = [1, 30, 4, 21, 100000];
array1.sort[];
console.log[array1];
// output: Array [1, 100000, 21, 30, 4]

1. Hàm sắp xếp trong javascript là gì?

Hàm sort là một phương thức thuộc mảng đối tượng trong javascript, được xếp chồng lên nhau sắp xếp các phần tử trong mảng tăng dần hoặc giảm dần theo số thứ tự trong bảng mã ascii, hoặc theo quy tắc trong hàm gọi lại

  • Mặc dù xác định các phần tử sẽ được sắp xếp theo bảng chữ cái với thứ tự tăng dần, điều này khiến sắp xếp phương thức sẽ sắp xếp các chuỗi rất chính xác. Tuy nhiên, khi sắp xếp các số sẽ không chính xác [ví dụ 20 và 100 thì 20 sẽ lớn hơn 100 vì 2 > 1]
  • Bạn có thể giải quyết vấn đề này bằng cách truyền tham số là một mảng so sánh
  • Hàm sắp xếp sẽ làm thay đổi mảng ban đầu

Cú pháp sắp xếp javascript như sau

Bài viết này đã được đăng tại [free tuts. mạng lưới]

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]

in which.

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
3 is an tham số không bắt buộc. Đây là một chức năng gọi lại được sử dụng để quyết định thứ tự sắp xếp của các phần tử trong mảng. Hai tham số
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
4 và
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
5 đại diện cho hai phần tử liền kề nhau trong mảng, và ta sẽ sử dụng nó để quyết định cách sắp xếp

  • Nếu hàm gọi lại trả về số lớn hơn 0 thì
    const fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort[]; // Apple,Banana,Mango,Orange
    5 sẽ đứng trước
    const fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort[]; // Apple,Banana,Mango,Orange
    4
  • Nếu hàm gọi lại trả về số bé hơn hoặc bằng 0 thì thứ tự được giữ nguyên, tức là
    const fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort[]; // Apple,Banana,Mango,Orange
    4 sẽ đứng trước
    const fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort[]; // Apple,Banana,Mango,Orange
    5

2. Các ví dụ về hàm sắp xếp mảng trong javascript

Ví dụ 1. Trường hợp sắp xếp với chuỗi

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange

Ví dụ 2. Trường hợp sắp xếp theo số

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
0

Như bạn đã thấy, kết quả trả về là sai, do hàm sắp xếp nó hiểu giữa hai số 3 và 10 nên 3 lớn hơn 1, vì vậy 3 sẽ đứng sau 10

Để giải quyết, ta sẽ sử dụng chức năng gọi lại như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
1

Ví dụ 3. Use function sort to so sánh một mảng với các phần tử là các chuỗi

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
2

Ví dụ 4. Use tham số so sánhFn

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
3

Như vậy là mình đã hướng dẫn hoàn thành cách sử dụng hàm sắp xếp trong javascript để sắp xếp các mảng tăng dần trong javascript. Hẹn gặp lại các bạn ở các bài tiếp theo nhé

Nội dung bài viết

Video learning setting per day

Trong bài viết này, chúng ta sẽ xem xét các trường hợp sử dụng biến phổ biến nhất cho phương thức

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
00 và cách chúng ta có thể sử dụng tối đa sức mạnh của nó

Đây là bài viết số 41 của Series - mục đích viết javascript giúp các bạn có thể tiết kiệm được nhiều thời gian để làm các công việc khác. Ngoài ra, bạn có thể học nâng cao hơn trong Series - Con đường kiến ​​trúc sư ở đó tập trung nhiều vào xử lý các vấn đề khó hơn

Hôm nay bài viết có thể là tôi khó có thể viết tốt hơn là tác giả, bạn muốn đọc vui lòng truy cập liên kết gốc bên dưới bài viết, mục đích muốn chia sẻ một số trường hợp sử dụng phổ biến nhất cho

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
01 Mảng phương thức . Các phương pháp
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
01 sắp xếp các yếu tố của một mảng và trả về các mảng sắp xếp. Thứ tự sắp xếp mặc định tăng dần và giảm dần. Trong bài viết này, bạn sẽ xem làm thế nào chúng ta có thể sử dụng sức mạnh của nó một cách tối đa về
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
01

Trước khi bắt đầu bạn cũng nên xem qua 10 tính năng phổ biến nhất của Array mà bất kỳ bạn nào cũng nên biết. Ok, đi thôi

Tăng dần [A đến Z]

Chúng ta có thể sắp xếp một chuỗi mảng đơn giản bằng cách sử dụng một phương thức mảng

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
01 mà không có hàm như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
9

Giảm dần [Z đến A]. Để sắp xếp các chuỗi mảng theo thứ tự giảm dần, chúng ta có thể sử dụng phương thức String

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
05 như sau

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
1

Sử dụng sort[] có sự phân biệt chữ hoa và thông thường

Trước tiên, chúng ta hãy xem điều gì sẽ xảy ra khi chúng ta sắp xếp mặc định cho một mảng có chứa cả phần tử chuỗi chữ thường và chữ hoa

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
2

Tăng dần [aA đến zZ]. Đó là một sơ đồ nếu bạn không biết có thể đi tìm rất mệt mỏi, để giải quyết vấn đề đó thì một giải pháp được đưa ra đó là chuyển tất cả các

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
06 về chữ thường và sau đó chúng ta tiếp tục so sánh. Bạn có thể xem ví dụ dưới đây

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
0

Hoặc một giải pháp khác

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
1

Sắp xếp số mảng JavaScript

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
2

Trong ví dụ trên, chúng ta có thể thấy rằng nếu chúng ta sử dụng một sắp xếp mặc định như ví dụ trên, chúng ta sẽ nhận được đầu ra không chính xác,

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
07 sẽ đứng trước
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
08, khi mà đáng ra
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
07 nằm ở đó . Điều này xảy ra bởi vì các phần tử của mảng được sắp xếp theo cách chuyển đổi chúng thành chuỗi và so sánh các chuỗi theo thứ tự đơn vị mã
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
10. Vì vậy, trong một sắp xếp số, 2 phải đứng trước 10, nhưng vì các số được chuyển thành chuỗi, nên
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
11 đứng trước
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
12 theo thứ tự Unicode

Giải pháp sắp xếp tăng dần. Chúng ta có thể sắp xếp một mảng số theo thứ tự tăng dần bằng cách sử dụng một hàm so sánh đơn giản như thế này

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
3

Giải pháp sắp xếp giảm dần. To sort an array number theo thứ tự giảm dần, chúng ta có thể chỉ cần thay đổi

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
13 như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
4

Sắp xếp một mảng với định dạng Date

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
5

Trong ví dụ trên, chúng ta có thể thấy rằng chuỗi ngày

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
14 đến trước
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
15 đó không phải là kết quả chính xác. Điều này xảy ra bởi vì lý do tương tự khi sắp xếp các mảng số, nơi mà chúng tôi đã tìm thấy
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
07 trước đây
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
08 khi sử dụng sắp xếp mặc định

Tăng dần Để sắp xếp đúng một chuỗi ngày, chúng ta có thể tạo một đối tượng

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
18 bằng cách chuyển chuỗi ngày thành
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
19 bên trong hàm so sánh như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
6

dần dần. Đối với thứ tự giảm dần, chúng ta có thể chỉ cần thay đổi như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
7

Sắp xếp mảng đối tượng javascript theo khóa

Chúng ta có thể sắp xếp một mảng các đối tượng theo một giá trị thuộc tính như sau

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
8

Đó là thứ sắp xếp cho thứ tự tăng dần và bạn cũng có thể làm ngược lại với thứ tự giảm dần

dần dần. Đối với logic thứ tự giảm dần, chúng ta chỉ cần thay đổi

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
13 trong hàm so sánh sắp xếp như

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
9

Sắp xếp mảng đối tượng javascript theo nhiều khóa

Tăng dần. Giả sử chúng ta có một mảng như thế này

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
0

Yêu cầu của chúng tôi là

Đầu tiên, chúng ta cần sắp xếp các giá trị có thuộc tính

// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
21 theo thứ tự tăng dần, sau đó thêm một điều kiện nữa đó là
// Functionless
array.sort[]

// Arrow function
array.sort[[firstEl, secondEl] => { .. } ]

// Compare function
array.sort[compareFn]

// Inline compare function
array.sort[function compareFn[firstEl, secondEl] { .. }]
22 tăng dần theo thứ tự. Vì vậy, kết qủa sẽ như thế này

Bạn có thể làm theo nhiều cách nhưng có vẻ như cách này khá phổ biến nhất

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
1

// Đầu ra giống như trong bảng trên Hoặc, bạn cũng có thể viết điều này trong một dòng như

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort[]; // Apple,Banana,Mango,Orange
2

and results does not have anything change

Tóm tắt

Bài viết này thật ra nó không mới nên nhiều bạn đã có kinh nghiệm với javascript rồi. Nhưng nó là một tài liệu tốt về cách sắp xếp trong mảng. Và đây là một bài viết được biên dịch lại từ bài viết gốc của tác giả Palash Mondal. Bạn có thể tham khảo ý kiến ​​​​hơn tại bài viết gốc. Chúc các bạn đạo code giỏi hơn nữa. ]

Chủ Đề