【发布时间】:2012-07-22 05:25:31
【问题描述】:
当我需要测试变量是否为数组(例如函数中的输入参数可能是对象或数组)时,我通常使用这段代码
typeof(myVar) === 'object' && myVar.length !== undefined;
考虑到即使myVar instanceof Array is faster 应该避免由于iframe 问题,这是正确的方法还是有更有效的方法?
【问题讨论】:
-
zepto.js(有很好的源代码)使用instanceof:
function isArray(value) { return value instanceof Array }src -
@bokonic :可能重复的答案清楚地表明,如果对象跨帧边界传递,这将失败,因为每个帧都有自己的 Array 对象。
标签: javascript