从对象数组中删除不需要的键
Removing unwanted keys from my array of objects
My Object
如何删除键像UserID, UserName从它…我是说选定的键…删除操作符不工作在我的情况下。
for (i=0 i <obj.length; i ++) {
delete obj[i]['keyName'];
}
上面的不起作用,也不会抛出错误。还有别的办法吗?
您漏掉了i=0
后面的;
另外,obj
需要是MyObject.PatientVitalsGetResult.Vitals
不要使用delete
;它会将元素设置为undefined,而不是移除它。请使用splice
。
var i;
for(i = 0; i < obj.length; i++){
obj[i].splice('keyName',1);
}
恐怕没有标准的方法。您需要执行旧Object
的条件复制,过滤不需要的属性:
var oldObject = { /* your object */ } ;
var newObject = { } ;
var filter = { "UserID": true , "UserName": true } ;
for(var key in oldObject)
if( !(key in filter) ) newObject[key] = oldObject[key] ;
然后在下面的代码中使用获得的newObject
var vitals = obj["PatientVitalsGetResult"]["Vitals"];
for (i=0; i < vitals.length; i++) {
delete(vitals[i]["UserID"])
};
这个解决方案如何....
Array.prototype.containsValue = function (value) {
for (var k in this) {
if (!this.hasOwnProperty(k)) {
continue;
} //skip inherited properties
if (this[k] == value) {
return true;
}
}
return false;
};
for (var key in Object) {
var unwantedKeys = ['UserName', 'UserID'];
if (unwantedKeys.containsValue(key)) continue;
// Play with your Object it won't contain these unwanted keys.
}
删除应该可以,我不确定你犯了什么错误。http://jsfiddle.net/spechackers/43hTD/相关文章:
- 删除客户端浏览器上不需要的内容
- 如何在jQuery中从段落中删除不需要的元素
- 如何删除javascript中的节点,而不需要父节点为null
- 如何从加载到javascript中的导出XML数据中删除不需要的空格
- 如何从网站上的所有单独页面标题中删除不需要的杂物
- 删除不需要的javascript和css是否包括减轻网页加载时间
- 如何从页面中动态删除所有不需要的CSS和JS
- AngularJS指令拖动对象如何删除不需要的鼠标效果
- 如何从字符串中删除不需要的字符
- 从带有Javascript的链接中删除不需要的CSS
- Jquery 不会根据需要删除所有内容
- 使用正则表达式删除前导空格、回车符和不需要的标签
- jQuery-需要删除鼠标离开时的值,但不需要删除鼠标进入时的值
- 正在删除图像之间不需要的空间
- 脚本抛出不需要的确认窗口.如何删除
- 如何删除合理段落中文本之间不需要的空白
- 如何隐藏滚动条,直到它们需要,然后删除,如果不需要
- 如何使用Javascript删除html标记中不需要的空格
- 使用javascript从网页中删除不需要的html内容
- 使用正则表达式从数组中删除不需要的html