Computer >> Máy Tính >  >> Lập trình >> Javascript

Kiểm tra xem đối tượng có chứa tất cả các khóa trong mảng JavaScript hay không

Chúng ta bắt buộc phải viết một hàm chứaAll () có hai đối số, đầu tiên là một đối tượng và sau đó là một mảng chuỗi. Nó trả về một boolean dựa trên thực tế là đối tượng có chứa tất cả các thuộc tính được đề cập dưới dạng chuỗi trong mảng hay không.

Vì vậy, hãy viết mã cho điều này. Chúng tôi sẽ lặp qua mảng, kiểm tra sự tồn tại của phần tử trong đối tượng, nếu chúng tôi tìm thấy một chuỗi không phải là khóa của đối tượng, chúng tôi thoát ra và trả về false, nếu không, chúng tôi trả về true.

Đây là mã để làm điều tương tự -

Ví dụ

const obj = {
   'name': 'Ashish Kumar','dob': '12/07/1991','gen': 'M','isEmployed': true,'jobType': 'full-time'
};
const obj2 = {
   'name': 'Ashish Kumar','dob': '12/07/1991','gen': 'M','jobType': 'full-time'
};
const arr = ['dob', 'name', 'gen', 'isEmployed', 'jobType'];
const containsAll = (obj, arr) => {
   for(const str of arr){
      if(Object.keys(obj).includes(str)){
         continue;
      }else{
         return false;
      }
   }
   return true;
};
console.log(containsAll(obj, arr));
console.log(containsAll(obj2, arr));

Đầu ra

Đầu ra của đoạn mã trên trong bảng điều khiển sẽ là -

true
false