我在js中有一个数组和对象:
var number = [23,234,654,3234];
var detail = {
23:"John",
234:"Doe",
654:50,
3234:"blue"
};
然后使用var remove = number.shift()
,我可以得到数组中的第一个值(在本例中为23)并将其从数组中删除。
我正在尝试从对象中删除相应的属性:在这种情况下,它将是23:"John"
。
我试过delete detail.remove;
但没有运气。
有什么建议吗?
由于
答案 0 :(得分:1)
根据MDN,delete operator后跟一个应该评估为属性引用的表达式。您的示例delete detail.remove
实际上是正确的。
但是,如果要以编程方式访问属性(或编号属性,例如23),请使用bracket notation。
// with variable
delete detail[remove];
// with string or integer
delete detail[23];
答案 1 :(得分:1)
你不能在obj.variable中使用变量,正确的方法是obj [variable]。
所以试试这个:
delete detail[remove];