كيفية التكرار على خصائص الكائن في JavaScript

هذه مهمة شائعة جدًا: التكرار على خصائص الكائن في JavaScript

إذا كان لديك كائن ، فلا يمكنك تكراره باستخدامهmap()وforEach()أو أfor..ofعقدة.

سوف تحصل على أخطاء:

const items = {
  'first': new Date(),
  'second': 2,
  'third': 'test'
}

map()سوف أعطيكTypeError: items.map is not a function:

items.map(item => {})

forEach()سوف أعطيكTypeError: items.forEach is not a function:

items.forEach(item => {})

for..ofسوف أعطيكTypeError: items is not iterable:

for (const item of items) {}

لذا ، ماذا يمكنك أن تفعل للتكرار؟

for..inهي طريقة أبسط:

for (const item in items) {
  console.log(item)
}

يمكنك أيضا الاتصالObject.entries()لتوليد مصفوفة بكل خصائصها المعدودة ، وتكرار ذلك باستخدام أي من الطرق المذكورة أعلاه:

Object.entries(items).map(item => {
  console.log(item)
})

Object.entries(items).forEach(item => { console.log(item) })

for (const item of Object.entries(items)) { console.log(item) }


المزيد من دروس js: