JavaScript

Một số phương thức thao tác với mảng JavaScript (Phần 1/4)

Một số phương thức thao tác với mảng JavaScript (Phần 1/4)
Được viết bởi Minh Hoàng

Series lập trình JavaScript, ngôn ngữ lập trình linh động, thực thi phía client.

Một số phương thức thao tác với mảng JavaScript (Phần 1/4)

1. Array.indexOf() Tìm kiếm phần tử, trả về index đầu tiên được tìm thấy

1. Array.indexOf() Tìm kiếm phần tử, trả về index đầu tiên được tìm thấy

Array.indexOf() tìm kiếm phần tử trong mảng:

  • Trả về vị trí index của phần tử đầu tiên được tìm thấy trong mảng.
  • Nếu không tìm thấy: trả về -1

– Cú pháp:

Array.indexOf(item, start);
  • item: Required. Giá trị của phần tử muốn tìm kiếm.
  • start: Optional. Xác định vị trí bắt đầu tìm kiếm, nếu giá trị là âm thì sẽ lấy vị trí tính từ cuối, rồi tìm kiếm đến cuối mảng.

– Ví dụ:

var fruits = ["Apple", "Orange", "Apple", "Mango"];

var idx1 = fruits.indexOf("Apple");		// return idx1 = 0
var idx2 = fruits.indexOf("Apple", 1);	// return idx2 = 2
Try it »

Array.indexOf() được hỗ trợ trong tất cả các trình duyệt, ngoại trừ Internet Explorer 8 và các phiên bản IE cũ hơn.

2. Array.lastIndexOf() Tìm kiếm phần tử, trả về index cuối cùng được tìm thấy

2. Array.lastIndexOf() Tìm kiếm phần tử, trả về index cuối cùng được tìm thấy

Array.lastIndexOf() tìm kiếm phần tử trong mảng:

  • Trả về vị trí index của phần tử cuối cùng được tìm thấy trong mảng.
  • Nếu không tìm thấy: trả về -1

– Cú pháp:

Array.lastIndexOf(item, start);
  • item: Required. Giá trị của phần tử muốn tìm kiếm.
  • start: Optional. Xác định vị trí bắt đầu tìm kiếm, nếu giá trị là âm thì sẽ lấy vị trí tính từ cuối, và tìm kiếm đến đầu mảng.

– Ví dụ:

var fruits = ["Apple", "Orange", "Apple", "Mango"];

var idx1 = fruits.lastIndexOf("Apple");		// return idx1 = 2
var idx2 = fruits.lastIndexOf("Apple", -3);	// return idx2 = 0
Try it »

Array.lastIndexOf() được hỗ trợ trong tất cả các trình duyệt, ngoại trừ Internet Explorer 8 và các phiên bản IE cũ hơn.

3. Array.findIndex() Trả về vị trí (index) của phần tử đầu tiên thỏa mãn một điều kiện cụ thể

3. Array.findIndex() Trả về vị trí (index) của phần tử đầu tiên thỏa mãn một điều kiện cụ thể

Ví dụ sau trả về index của phần tử đầu tiên lớn hơn 18:

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);	// return 3

function myFunction(value, index, array) {
    return value > 18;
}
Try it »

Trình duyệt Phiên bản hỗ trợ
Chrome >= 45
Firefox >= 25
IE >= 12
Opera >= 32
Safari >= 8
4. Array.find() Trả về giá trị (value) của phần tử đầu tiên thỏa mãn một điều kiện cụ thể

4. Array.find() Trả về giá trị (value) của phần tử đầu tiên thỏa mãn một điều kiện cụ thể

Ví dụ sau trả về giá trị của phần tử đầu tiên lớn hơn 18:

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);	// return 25

function myFunction(value, index, array) {
    return value > 18;
}
Try it »

Trình duyệt Phiên bản hỗ trợ
Chrome >= 45
Firefox >= 25
IE >= 12
Opera >= 32
Safari >= 8
5. toString() Tự động chuyển đổi Array thành String

5. toString() Tự động chuyển đổi Array thành String

– JavaScript tự động chuyển đổi một mảng thành một chuỗi được phân cách bằng dấu phẩy ,

– Điều này luôn luôn xảy ra khi bạn xuất (output) ra một mảng.

– Cả 2 ví dụ sau đây đều cho ra cùng một kết quả:

Ví dụ:
var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.toString();	// return Apple,Orange,Apple,Mango
Try it »

Ví dụ:
var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits;				// return Apple,Orange,Apple,Mango
Try it »

Tất cả các object JavaScript đều có method toString().

6. Array.join() Convert Array thành String

6. Array.join() Convert Array thành String

– Ở mục 5 chúng ta đã biết phương thức toString() chuyển đổi một mảng thành một chuỗi các giá trị của mảng được phân cách nhau bằng dấu phẩy.

– Phương thức join() cũng nối (join) tất cả các phần tử của mảng vào một chuỗi.

– Nó hoạt động giống như toString(), nhưng bạn có thể chỉ định dấu phân tách:

Ví dụ:
var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.join(" * ");	// return Banana * Orange * Apple * Mango
Try it »

7. Tìm giá trị Min trong mảng

7. Tìm giá trị Min trong mảng

7.1. Sử dụng hàm Math.min()

Bạn có thể sử dụng Math.min.apply() để tìm phần tử nhỏ nhất trong một mảng:

Ví dụ:
var points = [40, 100, 1, 5, 25, 10];

findMinArray(points);	// return 1

function findMinArray(arr) {
    return Math.min.apply(null, arr);
}
Try it »

7.2. Sử dụng hàm tự tạo
Ví dụ:
var points = [40, 100, 1, 5, 25, 10];

findMinArray(points);	// return 1

function findMinArray(arr) {
    var len = arr.length;
    var min = Infinity;
    while (len--) {
      if (arr[len] < min) {
        min = arr[len];
      }
    }
    return min;
}
Try it »
8. Tìm giá trị Max trong mảng

8. Tìm giá trị Max trong mảng

8.1. Sử dụng hàm Math.max()

Bạn có thể sử dụng Math.max.apply() để tìm phần tử lớn nhất trong một mảng:

Ví dụ:
var points = [40, 100, 1, 5, 25, 10];

findMaxArray(points);	// return 100

function findMaxArray(arr) {
    return Math.max.apply(null, arr);
}
Try it »

8.2. Sử dụng hàm tự tạo
Ví dụ:
var points = [40, 100, 1, 5, 25, 10];

findMaxArray(points);	// return 100

function findMaxArray(arr) {
    var len = arr.length
    var max = -Infinity;
    while (len--) {
        if (arr[len] > max) {
            max = arr[len];
        }
    }
    return max;
}
Try it »

Tham khảo w3schools.

Cảm ơn bạn đã theo dõi. Đừng ngần ngại hãy cùng thảo luận với chúng tôi!


Giới thiệu

Minh Hoàng

Xin chào, tôi là Hoàng Ngọc Minh, hiện đang làm BrSE, tại công ty Toyota, Nhật Bản. Những gì tôi viết trên blog này là những trải nghiệm thực tế tôi đã đúc rút ra được trong cuộc sống, quá trình học tập và làm việc. Các bài viết được biên tập một cách chi tiết, linh hoạt để giúp người đọc có thể tiếp cận một cách dễ dàng nhất. Hi vọng nó sẽ có ích hoặc mang lại một góc nhìn khác cho bạn[...]

3
Bình luận của bạn

avatar
3 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
0 Comment authors
Recent comment authors
Mới nhất Cũ nhất Thích nhiều nhất

Một số phương thức thao tác với mảng JavaScript (Phần 1/4)

by Minh Hoàng Time to read: 7 min
3