我有一个对象从 Flash 对象传递给一个方法。我希望能够像在 c# 中使用 Visual Studio 中的“添加手表”功能一样查看此对象中的所有属性。
这对javascript和firefox/firebug有可能吗?
我正在考虑做一个 for 循环和 console.logging 结果,但是迭代对象的最佳方法是什么,我会将它视为一个数组等?
非常感谢任何建议。皮特
我有一个对象从 Flash 对象传递给一个方法。我希望能够像在 c# 中使用 Visual Studio 中的“添加手表”功能一样查看此对象中的所有属性。
这对javascript和firefox/firebug有可能吗?
我正在考虑做一个 for 循环和 console.logging 结果,但是迭代对象的最佳方法是什么,我会将它视为一个数组等?
非常感谢任何建议。皮特
for (var p in obj) {
if (obj.hasOwnProperty(p)) {
console.log(p + ': ' + obj.p);
}
}
JavaScript 中的对象通过其原型继承,其原型也可以有原型。使用该hasOwnProperty
方法(从 Object 继承)检查该属性是否存在于您正在检查的对象上并且与它的原型无关。
从技术上讲,在 JS 中,对象是 +- 关联数组string->value
,所以....
for (var key in someObject) {
// key is a string
var value = someObject[key];
// ...
}
通常你可以只使用for (prop in obj) { }
语法。
for (var prop in obj) {
console.log(obj[name]);
}
在 jQuery 中有jQuery.each()方法,它允许对每个条目进行回调:
jQuery.each(obj, function(index, prop) {
console.log(prop);
});