本地数组变量不是数组

时间:2016-04-26 16:17:21

标签: javascript arrays

为什么这行javascript没有创建数组原型的实例? (我感兴趣的var是formatSet)

var date = angular.copy(srcDate),
    d = '',
    yyyy = date.getFullYear() - 2,
    MM = date.getMonth() + 1,
    dd = date.getDate(),
    hh = date.getHours(),
    mm = date.getMinutes(),
    ss = date.getSeconds(),
    formatSet = [MM, dd, hh, mm, ss];

请原谅我,如果这是重复的,但搜索条件有点模糊,我发现的所有内容都说明了Array.prototype.isArray()的使用,我熟悉并且仍然没有使用它。回答这个问题。

另外,如果我遗漏了某些内容,则出现的情况是错误:formatSet.isArray and formatSet.forEach is not a function

2 个答案:

答案 0 :(得分:3)

你需要这样做:

Array.isArray(formatSet);

而不是:

formatSet.isArray();

答案 1 :(得分:0)

检查数组的最佳方法是这样的:

if (formatSet.constructor === Array )

这是最快的方法。

Array.isArray()并不总是很好的基准。

检查以获取更多详细信息:

How do you check if a variable is an array in JavaScript?