Kiểm tra khóa tồn tại trong đối tượng JavaScript

Chúng ta có thể sử dụng toán tử “in” để kiểm tra một khóa cụ thể trong một đối tượng, giống như chúng ta có thể sử dụng nó để tìm sự tồn tại của một ký tự cụ thể trong một chuỗi. Để chứng minh điều này, chúng ta sẽ cần một đối tượng ở đó tạo một đối tượng với các dòng mã sau

var personObject = {
    FirstName. "John" ,
    lastName: "Doe" ,
    tuổi. 18 ,
    lương. 2200
}

 
Như bạn có thể thấy, đối tượng này nói về một người và bao gồm các chi tiết như tên, họ, tuổi và mức lương. Giả sử rằng chúng tôi muốn kiểm tra xem khóa "tuổi" có trong personObject của chúng tôi hay không. Trong trường hợp đó, hãy tìm kiếm tuổi trong personObject và đặt giá trị trả về trong một biến mới.

sự tồn tại = "tuổi" trong personObject;

 
Sau đó, chúng ta chỉ cần in giá trị bên trong biến tồn tại trên thiết bị đầu cuối bằng chức năng nhật ký bảng điều khiển như.

bảng điều khiển. log [ sự tồn tại ] ;

 
Sau đó, chỉ cần chạy chương trình và quan sát kết quả sau trên terminal.


Giá trị thực trong thiết bị đầu cuối có nghĩa là tuổi khóa tồn tại trong đối tượng personObject

Sau đó, chúng tôi cũng muốn kiểm tra khóa không có trong personObject. Đối với điều này, chúng ta sẽ sử dụng toán tử in để tìm khóa “martialStatus” trong personObject như

existence = "martialStatus" in personObject;

 
Và một lần nữa, chúng ta có thể chỉ cần chuyển biến tồn tại này cho hàm nhật ký bảng điều khiển để in kết quả trên thiết bị đầu cuối như.

bảng điều khiển. log [ sự tồn tại ] ;

 
Thực hiện chương trình và quan sát kết quả sau từ thiết bị đầu cuối.


Như bạn có thể thấy, kết quả là sai, nghĩa là không có khóa võStatus bên trong personObject của chúng ta

Phương pháp 2. Sử dụng Phương thức “hasOwnProperty[]” với Đối tượng

Trong JavaScript, mọi đối tượng đều có một số phương thức từ nguyên mẫu của nó. Một phương pháp như vậy được gọi là hasOwnProperty[]. Phương thức này lấy khóa bạn muốn tìm kiếm trong đối số của nó và trả về true hoặc false tùy thuộc vào sự hiện diện của khóa trong đối tượng đó

Để minh họa hasOwnProperty[], hãy tạo một đối tượng bằng các dòng mã sau

var car = {
  kiểu xe. "2015" ,
  thực hiện. "Porsche" ,
  giá. 328000 ,
  đánh giá. 4. 8 ,
} ;

 
Như bạn đã biết, những dòng trên là để tạo một đối tượng ô tô. Điều chúng ta muốn tìm là sự hiện diện của từ khóa “make” trong đối tượng “car”. Đối với điều này, hãy áp dụng phương thức hasOwnProperty[] trên đối tượng xe hơi với sự trợ giúp của toán tử dấu chấm và chuyển vào khóa “make” trong đối số của nó như.

tồn tại = xe hơi. hasOwnProperty ["make"] ;

 
Sau đó, chỉ cần chuyển biến tồn tại trong chức năng nhật ký bảng điều khiển để hiển thị kết quả trên thiết bị đầu cuối như.

bảng điều khiển. log [ sự tồn tại ] ;

 
Thực hiện chương trình cho kết quả sau.


Đầu ra trên thiết bị đầu cuối là đúng, có nghĩa là đối tượng ô tô chứa khóa tạo. Sau đó, hãy kiểm tra sự tồn tại của key "mileage" trong đối tượng car của chúng ta. Đối với điều này, chỉ cần chuyển khóa dưới dạng số dặm trong đối số của phương thức hasOwnProperty[]

tồn tại = xe hơi. hasOwnProperty ["mileage"] ;

 
Để hiển thị kết quả trên thiết bị đầu cuối, chỉ cần chuyển biến “sự tồn tại” trong chức năng nhật ký bảng điều khiển.

bảng điều khiển. log [ sự tồn tại ] ;

 
Thực hiện chương trình và quan sát kết quả sau.


Đầu ra cho thấy rằng không có chìa khóa nào như số dặm trong ô tô đối tượng

Sự kết luận

Trong JavaScript, chúng ta có thể nhanh chóng kiểm tra sự tồn tại của một khóa cụ thể bên trong một đối tượng bằng hai phương thức khác nhau. Các phương thức đầu tiên bao gồm việc sử dụng toán tử in và nó trả về true nếu sự tồn tại được tìm thấy, ngược lại, nó trả về false. Phương thức thứ hai bao gồm việc sử dụng một phương thức của Đối tượng JavaScript, đó là hasOwnProperty[]. Trong đối số của nó, bạn chỉ cần nhập khóa bạn muốn tìm kiếm và nó trả về true nếu tìm thấy khóa trong đối tượng. Nếu không, nó trả về false

Khi làm việc với javascript, thường có yêu cầu xác định xem một khóa có tồn tại trong một đối tượng cụ thể hay không. Bài viết này trình bày các cách dễ dàng để kiểm tra xem một khóa có tồn tại trong đối tượng javascript hay không bằng các phương pháp khác nhau và ví dụ minh họa

Mục lục

  • Kiểm tra xem khóa có tồn tại trong Đối tượng javascript hay không bằng toán tử in
  • Kiểm tra xem khóa có tồn tại trong Đối tượng javascript hay không bằng cách sử dụng hasOwnProperty[]
  • Kiểm tra xem khóa có tồn tại trong Đối tượng javascript hay không bằng cách sử dụng some[]
  • Kiểm tra xem khóa có tồn tại trong Đối tượng javascript hay không bằng cách sử dụng indexOf[]

Kiểm tra xem khóa có tồn tại trong đối tượng hay không bằng toán tử in

Toán tử của Javascript trong operator sẽ trả về true nếu một thuộc tính cụ thể có mặt trong một đối tượng cụ thể.

Thí dụ. -

Kiểm tra xem khóa 'loại' 'số lượng' exist in the object apparels ={type:”pants”, colour:”red”, material:”cotton”}

quảng cáo

Mã số. -

function keyExists[_object, _key] {
   if[_key in _object]
   {console.log["Key Exists"]}
   else{
    console.log["Key Does Not Exist"]
   }
}
//usage
let apparels ={type:"pants", colour:"red", material:"cotton"};
keyExists[apparels, 'type'];
keyExists[apparels, 'quantity'];

đầu ra. -

Key Exists
Key Does Not Exist

Giải trình. -

  • Trong đoạn mã trên, chức năng keyExists[_object, _key] được sử dụng để tìm xem một khóa có tồn tại trong đối tượng hay không
  • Trong phương thức, điều kiện if sử dụng toán tử in để kiểm tra xem _key [đối số thứ hai] có tồn tại trong _object [đối số thứ nhất] không

Kiểm tra xem khóa có tồn tại trong đối tượng hay không bằng hasOwnProperty[]

Phương thức hasOwnProperty[] của Javascriptmethod sẽ trả về true< . if a particular property is found within the object as its own property else will return false.

Thí dụ. -

Kiểm tra xem khóa 'loại' 'số lượng' exist in the object apparels ={type:”pants”, colour:”red”, material:”cotton”}

Mã số. -

function keyExists[_object, _key] {
    if[_object.hasOwnProperty[_key]]
    {  console.log["Key Exists"]}
    else{
     console.log["Key Does Not Exist"]
    }
 }
//usage
let apparels ={type:"pants", colour:"red", material:"cotton"};
keyExists[apparels, 'type'];
keyExists[apparels, 'quantity'];

đầu ra. -

Key Exists
Key Does Not Exist

Giải trình. -

  • Trong đoạn mã trên, chức năng keyExists[_object, _key] được sử dụng để tìm xem một khóa có tồn tại trong đối tượng hay không
  • Trong phương thức, nếu điều kiện sử dụng phương thức hasOwnProperty[] để kiểm tra xem _key [đối số thứ hai] có tồn tại trong _object [đối số thứ nhất].

Kiểm tra xem khóa có tồn tại trong đối tượng hay không bằng cách sử dụng some[]

Phương thức some[] của Javascript sẽ kiểm tra chức năng gọi lại trên tất cả các phần tử của calling array and returns true if it finds the element for which the callback function returns true.

Thí dụ. -

Kiểm tra xem khóa 'loại' 'số lượng' exist in the object apparels ={type:”pants”, colour:”red”, material:”cotton”}

Mã số. -

function keyExists[_object, _key] {
    var isKeyPresent = Object.keys[_object].some[value => value == _key];
    console.log[isKeyPresent];
}
//usage
let apparels ={type:"pants", colour:"red", material:"cotton"};
keyExists[apparels, 'type'];
keyExists[apparels, 'quantity'];

đầu ra. -

true
false

Giải trình. -

  • Trong đoạn mã trên, chức năng keyExists[_object, _key] được sử dụng để tìm xem một khóa có tồn tại trong đối tượng hay không
  • Trong phương thức, tất cả các khóa của đối tượng được trích xuất thành một mảng bằng Object. phím [_ đối tượng]
  • Trên mảng keys, phương thức some[] được áp dụng để kiểm tra xem có phần tử nào của mảng keys bằng _key [đối số thứ hai]

Lưu ý rằng some[] có thể được sử dụng từ ECMA Script 6 trở đi

Kiểm tra xem khóa có tồn tại trong đối tượng hay không bằng cách sử dụng indexOf[]

Phương thức indexOf[] của Javascriptmethod sẽ trả về đầu tiên . Nếu phần tử không tồn tại thì at which an element is found in the array. If the element does not exist then, -1 được trả về.

Thí dụ. -

Kiểm tra xem khóa 'loại' 'số lượng' exist in the object apparels ={type:”pants”, colour:”red”, material:”cotton”}

Mã số. -

function keyExists[_object, _key] {
  if[Object.keys[_object].indexOf[_key] === -1]
      {  console.log["Key Does Not Exist"]}
  else{
         console.log["Key Exists"]
      }
    }
//usage
let apparels ={type:"pants", colour:"red", material:"cotton"};
keyExists[apparels, 'type'];
keyExists[apparels, 'quantity'];

đầu ra. -

Key Exists
Key Does Not Exist

Giải trình. -

  • Trong đoạn mã trên, chức năng keyExists[_object, _key] được sử dụng để tìm xem một khóa có tồn tại trong đối tượng hay không
  • Trong phương thức, tất cả các khóa của đối tượng ođược trích xuất thành một mảng bằng Object. phím [_ đối tượng].
  • Trên mảng keys phương thức indexOf[_key] được áp dụng. Nếu _key [đối số thứ haid] được tìm thấy thì chỉ mục đầu tiên của nó được trả về. Khác -1 được trả lại và thông báo được in trên bảng điều khiển tương ứng.

Chủ Đề