阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

    教程列表

    数据库
    抓包专区
    测试专区

    CoffeeScript 检查变量的类型是否为数组

    检查变量的类型是否为数组

    问题

    你希望检查一个变量是否为一个数组。

    myArray = []
    console.log typeof myArray // outputs 'object'
    

    “typeof”运算符为数组输出了一个错误的结果。

    解决方案

    使用下面的代码:

    typeIsArray = Array.isArray || ( value ) -> return {}.toString.call( value ) is '[object Array]'
    

    为了使用这个,像下面这样调用 typeIsArray 就可以了。

    myArray = []
    typeIsArray myArray // outputs true
    

    讨论

    上面方法取自"the Miller Device"。另外一个方式是使用 Douglas Crockford 的片段。

    typeIsArray = ( value ) ->
        value and
            typeof value is 'object' and
            value instanceof Array and
            typeof value.length is 'number' and
            typeof value.splice is 'function' and
            not ( value.propertyIsEnumerable 'length' )
    
    卖前端学习教程

    只需几十元,就能买到培训班的内部教程!开启高薪之路!

    零基础小白阿里P7的教程都有!

    同时长期收购所有培训班的前端教程

    目录
    目录