JavaScript伪数组用法实例分析


Posted in Javascript onDecember 22, 2017

本文实例讲述了JavaScript伪数组用法。分享给大家供大家参考,具体如下:

在Javascript中什么是伪数组?

伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为,但仍可以对真正数组遍历方法来遍历它们。

1.典型的是函数的 argument参数,
2.像调用getElementsByTagName,document.childNodes之类的,它们都返回 NodeList对象都属于伪数组。

那么如何将伪数组转化为标准数组?

可以使用Array.prototype.slice.call(fakeArray)将数组转化为真正的Array 对象。

举个例子,利用伪数组实现不定参数求和问题.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪数组</title>
</head>
<script>
  function add(){
    var sum=0;
    console.log(arguments);
    for(var i=0;i<arguments.length;i++){
      sum +=arguments[i];
    }
    return sum;
  }
 console.log(add(1,2,5,8));
</script>
<body>
</body>
</html>

运行结果:

JavaScript伪数组用法实例分析

将伪数组转化为标准数组

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪数组</title>
</head>
<script>
  function add(){
    var sum=0;
    console.log(arguments instanceof Array);//可以判断下此时是不是真正数组,返回值为false;
    console.log(arguments);//此时打印的是传入的参数1,2,5,8
    var arguments=Array.prototype.slice.call(arguments);//将伪数组转化为标准数组
    arguments.push(10);//此时就可以调用标准数组的方法
    console.log(arguments instanceof Array);//可以判断下此时是不是真正数组,返回值为true;
    console.log(arguments);//此时打印的是传入的参数,push之后的数组1,2,5,8,10
    for(var i=0;i<arguments.length;i++){
      sum +=arguments[i];
    }
    return sum;
  }
 console.log(add(1,2,5,8));
</script>
<body>
</body>
</html>

运行结果:

JavaScript伪数组用法实例分析

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery插件开发基础简单介绍
Jan 07 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
Jan 27 Javascript
使用jquery的ajax需要注意的地方dataType的设置
Aug 12 Javascript
如何获取网站icon有哪些可行的方法
Jun 05 Javascript
javascript在IE下trim函数无法使用的解决方法
Sep 12 Javascript
javascript折半查找详解
Jan 26 Javascript
详解JavaScript ES6中的模板字符串
Jul 28 Javascript
jquery实现倒计时效果
Dec 14 Javascript
jQuery简单操作cookie的插件实例
Jan 13 Javascript
解析jQueryEasyUI的使用
Nov 22 Javascript
JS仿JQuery选择器功能
Mar 08 Javascript
JavaScript实现答题评分功能页面
Jun 24 Javascript
JavaScript中Object值合并方法详解
Dec 22 #Javascript
Angular简单验证功能示例
Dec 22 #Javascript
Angular实现的table表格排序功能完整示例
Dec 22 #Javascript
详解Vue中localstorage和sessionstorage的使用
Dec 22 #Javascript
vue + element-ui实现简洁的导入导出功能
Dec 22 #Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
Dec 22 #Javascript
js读取本地文件的实例
Dec 22 #Javascript
You might like
PHP获取类中常量,属性,及方法列表的方法
2009/04/09 PHP
Thinkphp将二维数组变为标签适用的一维数组方法总结
2014/10/30 PHP
学习php设计模式 php实现单例模式(singleton)
2015/12/07 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
2015/12/31 PHP
使用ucenter实现多站点同步登录的讲解
2019/03/21 PHP
javascript 时间比较实现代码
2009/10/28 Javascript
Javascript实现获取窗口的大小和位置代码分享
2014/12/04 Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
2015/01/07 Javascript
浅谈JavaScript中的作用域和闭包问题
2015/07/07 Javascript
jQuery实现放大镜效果实例代码
2016/03/17 Javascript
jquery ajax结合thinkphp的getjson实现跨域的方法
2016/06/06 Javascript
js关于getImageData跨域问题的解决方法
2016/10/14 Javascript
jQuery Masonry瀑布流插件使用方法详解
2017/01/18 Javascript
jQuery选择器之属性筛选选择器用法详解
2017/09/19 jQuery
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
js中let能否完全替代IIFE
2019/06/15 Javascript
Layui 数据表格批量删除和多条件搜索的实例
2019/09/04 Javascript
在JavaScript中实现链式调用的实现
2019/12/24 Javascript
python检测是文件还是目录的方法
2015/07/03 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
2017/03/24 Python
python里使用正则表达式的组嵌套实例详解
2017/10/24 Python
python3.5安装python3-tk详解
2019/04/26 Python
Python通过socketserver处理多个链接
2020/03/18 Python
Python常用GUI框架原理解析汇总
2020/12/07 Python
CSS3 please 跨浏览器的CSS3产生器
2010/03/14 HTML / CSS
打造经典复古风格的品牌:Alice + Olivia(爱丽丝+奥利维亚)
2016/09/07 全球购物
Expedia韩国官网:亚洲发展最快的在线旅游门户网站
2018/02/26 全球购物
德国足球商店:OUTFITTER
2019/05/06 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
车间副主任岗位职责
2013/12/24 职场文书
大型车展策划方案
2014/02/01 职场文书
会计师职业生涯规划范文
2014/02/18 职场文书
软件研发工程师岗位职责
2014/09/30 职场文书
2015年学校工作总结范文
2015/04/20 职场文书
2015年妇产科工作总结
2015/05/18 职场文书