Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ความสำคัญของแอตทริบิวต์ที่นับได้ในการกำหนดคุณสมบัติในวัตถุ JavaScript คืออะไร?


เราสามารถกำหนด คุณสมบัติ ของวัตถุโดยใช้ จุด และ วงเล็บ สัญกรณ์ นอกจากนี้ยังมีอีกวิธีหนึ่งที่คุณสมบัติที่เรียกว่า Object.defineProperty() ใช้เพื่อกำหนดคุณสมบัติ โดยปกติแล้วจะใช้พารามิเตอร์ 3 ตัว ได้แก่ ชื่ออ็อบเจ็กต์ ชื่อคุณสมบัติ ตัวบอกคุณสมบัติ

ไวยากรณ์

Object.defineProperty(object name, property name, property descriptor)

มากำหนดคุณสมบัติด้วยวิธีนี้กันเถอะ

ตัวอย่าง

ในตัวอย่างต่อไปนี้ ในขั้นต้น วัตถุมีคุณสมบัติเพียงหนึ่งเดียวชื่อ 'หนึ่ง '. ต่อมาทรัพย์สินอื่นชื่อ 'สอง ' ถูกเพิ่ม เมื่อเราพยายามแสดงคุณสมบัติทั้งหมด จะแสดงเฉพาะคุณสมบัติแรกเท่านั้น แต่ไม่แสดงคุณสมบัติที่เพิ่มตามที่แสดงในผลลัพธ์

<html>
<body>
<script>
   var object = {one: 1};
   Object.defineProperty(
      object,
      'two', {
         value: 2
       }
   );
   document.write(JSON.stringify(object));
</script>
</body>
</html>

ผลลัพธ์

{"one":1}

ทั้งหมดนี้เป็นเพราะ "นับได้ " แอตทริบิวต์ "นับได้ " ต้องเป็นจริงเพื่อกำหนดคุณสมบัติในวัตถุ แต่ "นับได้ " ใช้ค่า "เท็จ" เมื่อไม่ได้ประกาศ ดังนั้นเพื่อให้ค่าเป็น "จริง " เราต้องประกาศ "นับได้ " และจำเป็นต้องกำหนด "จริง" ไปเลย

ในตัวอย่างต่อไปนี้เมื่อ "นับได้ " เริ่มต้นและกำหนดค่าเป็น จริง , คุณสมบัติทั้งหมดถูกแสดงตามที่แสดงในผลลัพธ์

ตัวอย่าง

<html>
<body>
<script>
   var object = {one: 1};
  Object.defineProperty(
   object,
   'two', {
      value: 2,
      enumerable: true
   }
);
document.write(JSON.stringify(object));
</script>
</body>
</html>

ผลลัพธ์

{"one":1,"two":2}