Menggunakan Sifat Dinamik dalam Objek
Mencipta objek dengan sifat berubah-ubah dalam JavaScript kadangkala boleh memberikan cabaran. Dalam konteks ini, kami akan menyelidiki teknik untuk menetapkan rentetan sebagai kunci objek, menyediakan penyelesaian untuk kedua-dua standard ES2015 terkini dan versi JavaScript yang lebih awal.
Penyelesaian ES2015 (ES6)
1. Sifat Dikira:
ES2015 memperkenalkan konsep sifat yang dikira, membolehkan penciptaan objek dengan kunci yang dikira secara dinamik:
var obj = { [myKey]: value, };
Menggunakan ini pada senario:
stuff = function (thing, callback) { var inputs = $('div.quantity > input').map(function () { return { [this.attr('name')]: this.attr('value'), }; }); callback(null, inputs); };
Nota: Untuk keserasian penyemak imbas, pertimbangkan untuk menggunakan transpiler seperti Babel.
Penyelesaian Pra-ES2015
2. Notasi Kurungan:
ES5 dan versi terdahulu memerlukan penggunaan tatatanda kurungan untuk menetapkan kunci dinamik:
var obj = {}; obj[myKey] = value;
Dalam keadaan ini:
stuff = function (thing, callback) { var inputs = $('div.quantity > input').map(function () { var key = this.attr('name'); var value = this.attr('value'); var ret = {}; ret[key] = value; return ret; }); callback(null, inputs); };
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Objek JavaScript dengan Kunci Rentetan yang Ditugaskan Secara Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!