JavaScript中的类数组对象介绍

 更新时间:2014年12月30日 08:53:16   投稿:junjie  
这篇文章主要介绍了JavaScript中的类数组对象介绍,一个对象并不是由Array构造函数所创建的,它依然呈现出数组的行为,在这种情况下,这些对象被称为“类数组对象”,需要的朋友可以参考下

JavaScript中,数组是一个特殊的对象,其property名为正整数,且其length属性会随着数组成员的增减而发生变化,同时又从Array构造函数中继承了一些用于进行数组操作的方法。而对于一个普通的对象来说,如果它的所有property名均为正整数,同时也有相应的length属性,那么虽然该对象并不是由Array构造函数所创建的,它依然呈现出数组的行为,在这种情况下,这些对象被称为“类数组对象”。以下是一个简单的类数组对象:

复制代码 代码如下:

var o = {0:42, 1:52, 2:63, length:3}
console.log(o);

与普通对象不同的是,类数组对象拥有一个特性:可以在类数组对象上应用数组的操作方法。比如,在ECMAScript 5标准中,可以用以下方法来将上面的对象o合并成字符串:
复制代码 代码如下:

console.log(Array.prototype.join.call(o));//"42,52,63"

也可以在类数组对象上使用slice()方法获取子数组:
复制代码 代码如下:

console.log(Array.prototype.slice.call(o, 1, 2));//[52]

在浏览器环境中,document.getElementsByTagName()语句返回的就是一个类数组对象。在function调用中,function代码内的arguments变量(保存传入的参数)也是一个类数组对象。

在ECMAScript 5标准中,字符串string就是一个只读的类数组对象:

复制代码 代码如下:

var s = "History";
console.log(s[3]);//t
console.log(Array.prototype.join.call(s, " "));//H i s t o r y

相关文章

  • 使用AOP改善javascript代码

    使用AOP改善javascript代码

    这篇文章主要介绍了使用AOP改善javascript代码,需要的朋友可以参考下
    2015-05-05
  • 10个JavaScript面试常考的前端手写题总结

    10个JavaScript面试常考的前端手写题总结

    这篇文章主要为大家详细介绍了10个JavaScript面试常考的前端手写题,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下
    2024-02-02
  • js下拉菜单语言选项简单实现

    js下拉菜单语言选项简单实现

    大家对下拉菜单并不陌生吧,下面为大家介绍下使用js实现下拉菜单语言选项,具体实现如下,喜欢的朋友可以看看
    2013-09-09
  • JavaScript中判断字符串是否为空的几种常用方法

    JavaScript中判断字符串是否为空的几种常用方法

    JavaScript字符串的判空方法有很多种,下面这篇文章主要给大家介绍了关于JavaScript中判断字符串是否为空的几种常用方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • Bootstrap table的使用方法

    Bootstrap table的使用方法

    这篇文章主要为大家详细解析了JS组件Bootstrap Table使用方法,具有一定的实用性和参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • 使用url-loader处理图片等资源文件的方法步骤

    使用url-loader处理图片等资源文件的方法步骤

    在Web开发中,处理图片、字体等资源文件是一个常见的需求,传统的做法是将这些资源文件放在静态目录中,然后在HTML或CSS中引用,然而,这种方法在构建工具(如Webpack)中并不总是最理想的,为了解决这个问题,可以使用url-loader,需要的朋友可以参考下
    2025-04-04
  • 微信小程序获取头像和昵称的最新方法(直接用!)

    微信小程序获取头像和昵称的最新方法(直接用!)

    微信小程序最新获取头像信息之前是使用open-dada获取微信头像和昵称,但是后面由于官网更新,此方法被收回了,所以不能使用此方法了,下面这篇文章主要给大家介绍了关于微信小程序获取头像和昵称的最新方法,本文介绍的方法可以直接拿来用,需要的朋友可以参考下
    2023-05-05
  • 利用JS实现简单的瀑布流加载图片效果

    利用JS实现简单的瀑布流加载图片效果

    今天学习了一个瀑布流加载效果,很多网站都有瀑布流效果,下面通过本文给大家分享利用JS实现简单的瀑布流加载图片效果,需要的朋友参考下吧
    2017-04-04
  • 使用百度地图api实现根据地址查询经纬度

    使用百度地图api实现根据地址查询经纬度

    这篇文章主要介绍了使用百度地图api实现根据地址查询经纬度的方法,附上实例,推荐给有需要的小伙伴们。
    2014-12-12
  • js实现掷骰子小游戏

    js实现掷骰子小游戏

    这篇文章主要为大家详细介绍了js实现掷骰子小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10

最新评论