Javascript对象删除元素
javascript object delete element
我有一个关于delete对象属性的问题,例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>test</title>
</head>
<body>
<script type="text/javascript">
var tmp = {
x: 1,
y: 2,
z: 3
};
var tmp1 = {
x: 1
};
for (pro in tmp) {
console.log("get tmp <<" + pro + ">> property!!");
if (!tmp1.hasOwnProperty(pro)) {
console.log("we will delete <<" + pro + ">> property");
delete tmp.pro; // or delete tmp[pro];
}
}
console.log("--------------");
for (p in tmp)
console.log(p);
console.log("--------------");
for (p in tmp)
document.write(p + "--" + tmp[p] + '<br>');
</script>
</body>
</html>
如果我使用删除tmp。pro的结果:x=1 y=2 z=3(是不工作的!!),但当我使用delete tmp[pro]的结果是x=1(删除是可以的!!),为什么??
pro
是字符串,否则JavaScript将其解释为存在于tmp
上的pro
属性。当使用方括号时,这是通过名称引用属性的另一种方式。
它们是等价的:
// #1
bar['baz']
// #2
bar.baz
// #3
var prop = 'baz';
bar[prop]
相关文章:
- 删除对HTML元素的拖动
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 从所有元素中删除HTML5验证
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- 从组件状态的数组中删除元素
- angularjs删除动态形式元素中的特殊字符
- Mongoose-在更新中删除数组元素
- 从数组中删除元素的最佳方法是:javascript/jquery
- 删除不起作用的父元素和所有子元素
- 一些元素没有从数组中删除
- 正在尝试删除子元素的最后一个子元素
- JavaScript-如何按类查找元素并删除此类
- 正则表达式条件来删除元素
- Small Javascript从动态表单中删除多个元素的问题
- javascript:在元素删除后停止setInterval
- JQUERY:动态 AJAX 和 html 元素删除
- AngularJS ngRepeat元素删除
- AngularJS & lt; select>使用ng-model和ng-options在元素删除时被破坏
- jQuery UI datetimepicker绑定到错误的输入后DOM元素删除
- 防止 jQuery 在元素删除时取消绑定事件