javascript中数组化的一般见解
javascript中数组化的一般见解,数组化浏览器中存在许多类数组对象,往往对类数组操作比较麻烦,没有数组那些非常方便的方法,在这种情况下,就有了数组化方法。
数组化的一般方法
1.第一种也是我们最常见的的方法,[].slice.call方法
function toArray(obj){
- <p><font size="3"> return [].slice.call(obj);</font></p>
- <p><font size="3"> //Array.prototype.slice.call();</font></p>
- <p><font size="3"> }</font></p>
Ps:这种方法,其实就是引用方法,注释的部分为完全写法,返回的就是一个数组对象。2.第二种方法借鉴的是jq中的makeArray方法
function makeArray(obj){ - <p><font size="3"> var target = [];</font></p>
- <p><font size="3"> if(obj != null){</font></p>
- <p><font size="3"> var i = obj.length;</font></p>
- <p><font size="3"> if(i = null || typeof obj === 'string' || typeof obj === 'function' ||
- obj.setInterval){//</font></p>
如果是字符串、函数win对象,就把这个元素付给创建数组的第一个元素返回出去;
target[0] = obj;
- <p><font size="3"> }else{//如果不是以上那些元素,通过循环把obj中每一个赋给target的每一个索引;</font></p>
- <p><font size="3"> while(i){</font></p>
- <p><font size="3"> target[--i] = obj[i];</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> return target;</font></p>
}
3.第三种方法
function $arr(ele) {
- <p><font size="3"> if (!ele){</font></p>
- <p><font size="3"> return [];</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> if (ele.toArray){</font></p>
- <p><font size="3"> return ele.toArray();</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> var length = ele.length || 0, results = new Array(length);</font></p>
- <p><font size="3"> while (length--){</font></p>
- <p><font size="3"> results[length] = ele[length];</font></p>
- <p><font size="3"> }</font></p>
- <p><font size="3"> return results;</font></p>
- <p><font size="3"> }</font></p>
javascript中数组化的一般见解的更多相关文章
- JavaScript中数组Array方法详解
ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方 ...
- 前端面试之JavaScript中数组的方法!【残缺版!!】
前端面试之JavaScript中数组常用的方法 7 join Array.join()方法将数组中所有元素都转化为字符串并连接在-起,返回最后生成的字 符串.可以指定一个可选的字符串在生成的字符串中来 ...
- JavaScript中数组操作常用方法
JavaScript中数组操作常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2 ...
- javascript中数组Array的方法
一.常用方法(push,pop,unshift,shift,join)push pop栈方法,后进先出var a =[1,2,3];console.log(a.push(40)); //4 返回数组的 ...
- Javascript中数组
Javascript中数组 1.什么是数组 所谓的数组就是一组数据的集合,在内存中表现为一段连续的内存地址(保存在堆内存) 2.创建数组的含义 创建数组的目的:就是为了保存更多的数据 3.数组的定义 ...
- javascript中数组常用方法总结
原文:javascript中数组常用方法总结 在javascript的基础编程中,数组是我们最常遇到的,那么数组的一些常用方法也是我们必须要掌握的,下面我们总结一下数组中常用的方法. toString ...
- javascript中数组的常用算法深入分析
Array数组是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array是前端必修的功课.本文将给大家详细介绍了javascri ...
- 总结Javascript中数组各种去重的方法
相信大家都知道网上关于Javascript中数组去重的方法很多,这篇文章给大家总结Javascript中数组各种去重的方法,相信本文对大家学习和使用Javascript具有一定的参考借鉴价值,有需要的 ...
- JavaScript中数组常用方法的总结
JavaScript中数组Array常用的方法总结 标签(空格分隔): JavaScript ECMAScript数组给我们提供了许多常用的方法,便于我们对数组进行操作,下面,就来总结一下这些方法. ...
随机推荐
- C#导入Excel、Excel导入、导入.xls 、导入.xlsx、Excel2003版本、Excel2007版本
C#导入Excel: 1.选择Excel 03版文件 2.选择需要读取数据的Excel工作表 3.选择工作表中需要读取的列 源码地址在图片下面,不要点击图片,点击下载地址跳转下载.
- web移动端,需要清楚设备像素比devicePixelRatio的应用
我们这里所说的devicePixelRatio其实指的是window.devicePixelRatio, 被所有WebKit浏览器以及Opera所支持. 概念 devicePixelRatio ,它是 ...
- Html5新增标签的学习。
随笔,记录的比较随便. 今天新学习了9个标签. <audio> 简单的说就是一个音频标签,他的主要常用属性有src=""音频的路径 controls="con ...
- MMU学习总结
待完善 一.MMU主要完成哪些事务? 二.PowerPC上的BAT.LAW是做什么用的? 三.
- Android为TV端助力 运算符&,|,^
1.&按位“与”的计算是把两个数字分别写成二进制形式,然后按照每一位进行比较,&计算中,只要有一个是0就算成02.|运算转换成2进制进行比较,两个位只要有一个为1,那么结果就是1,否则 ...
- JNI C反射调用java方法
前面记录了调用C的学习笔记,现在来记录一下C反射调用Java的笔记.JNI开发学习之调用C方法 Android开发中调用一个类中没有公开的方法,可以进行反射调用,而JNI开发中C调用java的方法也是 ...
- python--文件流读写
在讲述fileinput模块之前,首先说一下python内置的文件API—open()函数以及与其相关的函数. 我这里主要讲讲其中四个比较重要和常用的方法,更多的方法,可以参考:菜鸟教程http:// ...
- 深圳市共创力咨询为某大型上市企业提供两天的UCD内训与辅导服务!
2017年5月23和24日两天,深圳市共创力咨询为国内某大型上市企业提供了为期两天的内训与辅导服务.本次执行培训与辅导任务的是UCD(基于用户体验的设计)资深顾问蔷薇女士.蔷薇老师分别从UCD理论.U ...
- Spring从认识到细化了解
目录 Spring的介绍 基本运行环境搭建 IoC 介绍: 示例使用: 使用说明: 使用注意: Bean的实例化方式 Bean的作用范围的配置: 补充: DI: 属性注入: 补充: IoC的注解方式: ...
- robot framework笔记(一):环境配置(基于python3)+在pycharm中编写及运行robot脚本
(一)使用pip安装robotframework框架和seleniumlibrary库 pip install --upgrade robotframework pip install --upgra ...