Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Cách thoát khỏi hàm _.each trong Underscore.js

Bạn không thể break từ phương thức each. Nó sao chép hành vi của forEach bản địa và forEach bản địa không cung cấp cách thoát khỏi vòng lặp (ngoài việc throw exception).

Bạn có thể dùng các hàm khác như:

  • _.find: nó thoát khỏi vòng lặp khi tìm thấy phần tử. Ví dụ:

_.find([1, 2, 3, 4], (element) => {
  // Kiểm tra điều kiện
  if (element === 2) {
    return true;
  }
  // Làm gì đó với phần tử
  // ...
});
  • Throw exception từ each. Ví dụ:

try {
  _([1, 2, 3, 4]).each((element) => {
    if (element === 2) {
      throw new Error();
    }
    // ...
  })
} catch (e) {
  // Do nothing.
}