สมมติว่าคุณมีวัตถุจาวาสคริปต์ดังนี้:
var data = { foo: 'bar', baz: 'quux' };
คุณสามารถเข้าถึงคุณสมบัติโดยใช้ชื่อคุณสมบัติ:
var foo = data.foo;
var baz = data["baz"];
แต่เป็นไปได้หรือไม่ที่จะได้รับค่าเหล่านี้หากคุณไม่ทราบชื่อคุณสมบัติ? ลักษณะที่ไม่เรียงลำดับของคุณสมบัติเหล่านี้ทำให้ไม่สามารถแยกออกจากกันได้หรือไม่?
ในกรณีของฉันฉันกำลังคิดถึงสถานการณ์ที่ฟังก์ชันต้องยอมรับชุดของคู่ชื่อ - ค่า แต่ชื่อของคุณสมบัติอาจเปลี่ยนไป
ความคิดของฉันเกี่ยวกับวิธีการทำสิ่งนี้คือการส่งชื่อคุณสมบัติไปยังฟังก์ชันพร้อมกับข้อมูล แต่มันให้ความรู้สึกเหมือนแฮ็ค ฉันอยากจะทำสิ่งนี้ด้วยการวิปัสสนาถ้าเป็นไปได้