เมื่อทำซ้ำคุณสมบัติของออบเจ็กต์จะปลอดภัยหรือไม่ที่จะลบออกขณะอยู่ในลูป for-in
ตัวอย่างเช่น:
for (var key in obj) {
if (!obj.hasOwnProperty(key)) continue;
if (shouldDelete(obj[key])) {
delete obj[key];
}
}
ในภาษาอื่น ๆ อีกมากมายที่ทำซ้ำบนอาร์เรย์หรือพจนานุกรมและการลบภายในที่ไม่ปลอดภัย อยู่ใน JS ได้หรือไม่?
(ฉันใช้ Spidermonkey runtime ของ Mozilla)