【发布时间】:2015-11-24 16:59:39
【问题描述】:
我有一个从 c# 类库返回的 javascript 对象。对象是简单的名称-值对列表。
我正在使用
for (var myList in myListItems) {
console.log(myList);
console.log(myListItems[myList]);
}
要检索列表中的所有项目,但在我的项目旁边,我得到了一堆 .toString 方法和其他几个方法,可能是从某些东西继承而来的。
有没有办法删除所有这些方法,只获取我需要的数据?
【问题讨论】:
-
如果没有看到更多代码/上下文,很难准确地说出,但检查
hasOwnProperty可能会有所帮助。 -
for...in将遍历对象及其原型的所有可枚举属性。如果您可以清楚地识别您不想要的属性的特征,那么可能有一种方法可以做到这一点。但是您当前的描述不完整/含糊不清。 -
您有一个解决方案,但目前尚不清楚它为什么有效。在我们知道您的数据结构并知道为什么
hasOwnProperty在这种情况下有效之前,这个问题并不是真正有用的。 -
我有 c# 方法可以进行一些计算并将一堆名称-值对项返回到 javascript。在 javascript 中,我需要将所有名称 - 值对打印到屏幕上。出于某种原因,除了名称-对值之外,很少出现 .toString 方法。我想这就是 c# 编译器添加到代码中的内容......我的问题是如何删除 .toString 方法,.hasOwnProperty 工作,我不知道如何以及为什么(我是只有基本 JavaScript 知识的 c# 人).. .
标签: javascript c# visual-studio