Chúng tôi được yêu cầu viết một hàm JavaScript lấy một mảng các từ chuỗi làm đối số đầu tiên. Đối số thứ hai của hàm sẽ là một chuỗi chứa tất cả 26 bảng chữ cái viết thường tiếng Anh nhưng theo một số thứ tự xáo trộn ngẫu nhiên.
Nhiệm vụ của hàm của chúng ta là kiểm tra xem các từ trong mảng có được đặt từ điển một cách chính xác theo thứ tự được chỉ định bởi đối số thứ hai hay không. Nếu đúng như vậy, chúng ta nên trả về true, ngược lại là false.
Ví dụ -
Nếu mảng đầu vào của các từ và thứ tự là -
const arr = ['this', 'is', 'something', 'mad']; const order = 'hdetljnopqabcuvwxfgirsykmz';
Sau đó, đầu ra phải là -
const output = true;
bởi vì 't' đứng trước 'i' đứng trước 's' đứng trước 'm' trong chuỗi thứ tự.
Ví dụ
Mã cho điều này sẽ là -
const arr = ['this', 'is', 'something', 'mad']; const order = 'hdetljnopqabcuvwxfgirsykmz'; const isPlacedCorrectly = (arr = [], order) => { const { length } = arr; for(let i = 0; i < length - 1; i++){ for(let j =0; j < arr[i].length;j++){ if(order.indexOf(arr[i][j])< order.indexOf(arr[i+1][j])) { break; } else if (order.indexOf(arr[i][j]) === order.indexOf(arr[i+1][j])){ continue; } else { return false; } } } return true; }; console.log(isPlacedCorrectly(arr, order));
Đầu ra
Và đầu ra trong bảng điều khiển sẽ là -
true