Javascript 什么';这是删除对象成员且不留下未定义成员的最佳方法
删除对象成员而不留下未定义成员的最佳方法是什么 如 对于o上的for循环,将获得一个未定义的成员。 我已经让lodash运行了,但是Javascript 什么';这是删除对象成员且不留下未定义成员的最佳方法,javascript,ecmascript-6,lodash,Javascript,Ecmascript 6,Lodash,删除对象成员而不留下未定义成员的最佳方法是什么 如 对于o上的for循环,将获得一个未定义的成员。 我已经让lodash运行了,但是。{throw Error(“您无法访问此属性”);} }); o、 a;//错误:您无法访问此属性当您试图获取不存在的属性时,您将获得未定义的属性。如果您不想这样做,请定义一个抛出的方法 Object.defineProperty(o, 'a', { get: () => { throw Error("You can't access this prop
。
似乎不起作用
谢谢
肖恩。删除就是方法<代码>删除不会留下任何内容。一旦你
删除o.a
,o
就根本没有a
属性。1你看到未定义的唯一原因是如果你仍然要求属性,因为要求对象上不存在的属性的值会返回未定义。
对于o上的for循环,将得到一个未定义的membe
没有任何循环是基于o
的实际属性工作的。例如,不是这个:
var o={
答:1,,
b:2,
c:3
}
删除o.a;//删除o['a'];也有效
for(o中的变量名称){
log(name+”:“+o[name]);
}
删除
就是方法<代码>删除
不会留下任何内容。一旦你删除o.a
,o
就根本没有a
属性。1你看到未定义的唯一原因是如果你仍然要求属性,因为要求对象上不存在的属性的值会返回未定义。
对于o上的for循环,将得到一个未定义的membe
没有任何循环是基于o
的实际属性工作的。例如,不是这个:
var o={
答:1,,
b:2,
c:3
}
删除o.a;//删除o['a'];也有效
for(o中的变量名称){
log(name+”:“+o[name]);
}
当您试图获取一个不存在的属性时,会得到未定义的属性。如果您不想这样做,请定义一个抛出的方法
Object.defineProperty(o, 'a', {
get: () => { throw Error("You can't access this property"); }
});
var o={
答:1,,
b:2,
c:3
}
Object.defineProperty(o,'a'{
get:()=>{throw Error(“您无法访问此属性”);}
});
o、 a;//错误:您无法访问此属性
当您试图获取不存在的属性时,您将获得未定义的属性。如果您不想这样做,请定义一个抛出的方法
Object.defineProperty(o, 'a', {
get: () => { throw Error("You can't access this property"); }
});
var o={
答:1,,
b:2,
c:3
}
Object.defineProperty(o,'a'{
get:()=>{throw Error(“您无法访问此属性”);}
});
o、 a;//错误:您无法访问此属性
删除
不会留下任何内容,它会deletes@adeneo:这是表达它的最佳方式。不错。delete
没有留下任何东西,它deletes@adeneo:这是表达它的最佳方式。不错。