javascript中数组化的一般见解,数组化浏览器中存在许多类数组对象,往往对类数组操作比较麻烦,没有数组那些非常方便的方法,在这种情况下,就有了数组化方法。
  数组化的一般方法
  1.第一种也是我们最常见的的方法,[].slice.call方法
  function toArray(obj){

  1. <p><font size="3">  return [].slice.call(obj);</font></p>
  2. <p><font size="3">  //Array.prototype.slice.call();</font></p>
  3. <p><font size="3">  }</font></p>
      Ps:这种方法,其实就是引用方法,注释的部分为完全写法,返回的就是一个数组对象。

      2.第二种方法借鉴的是jq中的makeArray方法
      function makeArray(obj){

  4. <p><font size="3">  var target = [];</font></p>
  5. <p><font size="3">  if(obj != null){</font></p>
  6. <p><font size="3">  var i = obj.length;</font></p>
  7. <p><font size="3">  if(i = null || typeof obj === 'string' || typeof obj === 'function' ||
  8. obj.setInterval){//</font></p>

如果是字符串、函数win对象,就把这个元素付给创建数组的第一个元素返回出去;
  target[0] = obj;

  1. <p><font size="3">  }else{//如果不是以上那些元素,通过循环把obj中每一个赋给target的每一个索引;</font></p>
  2. <p><font size="3">  while(i){</font></p>
  3. <p><font size="3">  target[--i] = obj[i];</font></p>
  4. <p><font size="3">  }</font></p>
  5. <p><font size="3">  }</font></p>
  6. <p><font size="3">  }</font></p>
  7. <p><font size="3">  return target;</font></p>

  }

  3.第三种方法
  function $arr(ele) {

    1. <p><font size="3">  if (!ele){</font></p>
    2. <p><font size="3">  return [];</font></p>
    3. <p><font size="3">  }</font></p>
    4. <p><font size="3">  if (ele.toArray){</font></p>
    5. <p><font size="3">  return ele.toArray();</font></p>
    6. <p><font size="3">  }</font></p>
    7. <p><font size="3">  var length = ele.length || 0, results = new Array(length);</font></p>
    8. <p><font size="3">  while (length--){</font></p>
    9. <p><font size="3">  results[length] = ele[length];</font></p>
    10. <p><font size="3">  }</font></p>
    11. <p><font size="3">  return results;</font></p>
    12. <p><font size="3">  }</font></p>

javascript中数组化的一般见解的更多相关文章

  1. JavaScript中数组Array方法详解

    ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方 ...

  2. 前端面试之JavaScript中数组的方法!【残缺版!!】

    前端面试之JavaScript中数组常用的方法 7 join Array.join()方法将数组中所有元素都转化为字符串并连接在-起,返回最后生成的字 符串.可以指定一个可选的字符串在生成的字符串中来 ...

  3. JavaScript中数组操作常用方法

    JavaScript中数组操作常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2 ...

  4. javascript中数组Array的方法

    一.常用方法(push,pop,unshift,shift,join)push pop栈方法,后进先出var a =[1,2,3];console.log(a.push(40)); //4 返回数组的 ...

  5. Javascript中数组

    Javascript中数组 1.什么是数组 所谓的数组就是一组数据的集合,在内存中表现为一段连续的内存地址(保存在堆内存) 2.创建数组的含义 创建数组的目的:就是为了保存更多的数据 3.数组的定义 ...

  6. javascript中数组常用方法总结

    原文:javascript中数组常用方法总结 在javascript的基础编程中,数组是我们最常遇到的,那么数组的一些常用方法也是我们必须要掌握的,下面我们总结一下数组中常用的方法. toString ...

  7. javascript中数组的常用算法深入分析

    Array数组是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array是前端必修的功课.本文将给大家详细介绍了javascri ...

  8. 总结Javascript中数组各种去重的方法

    相信大家都知道网上关于Javascript中数组去重的方法很多,这篇文章给大家总结Javascript中数组各种去重的方法,相信本文对大家学习和使用Javascript具有一定的参考借鉴价值,有需要的 ...

  9. JavaScript中数组常用方法的总结

    JavaScript中数组Array常用的方法总结 标签(空格分隔): JavaScript ECMAScript数组给我们提供了许多常用的方法,便于我们对数组进行操作,下面,就来总结一下这些方法. ...

随机推荐

  1. 初识 Java-监听器

    使用Listener类当java  web应用程序在web容器中运行时,在java web应用程序内部会不断发生各种事件,例如web应用的启动,暂停,销毁等.以及web应用中session开始和结束 ...

  2. C#两个时间相减

    原文地址:http://www.jb51.net/article/60177.htm using System; using System.Collections.Generic; using Sys ...

  3. Mybatis 同时传入多个参数和对象

    流程 1,mapper 接口文件使用 @param 注解(一个参数就不用使用注解,多个参数要么使用注解,要么使用数组的方式取值) 2,mapper xml 文件使用 mapper 接口文件传参 pub ...

  4. Conccrent中 Unsafe类原理 以及 原子类AutomicXX的原理以及对Unsafe类的使用

    Unsafe类的介绍 Java中基于操作系统级别的原子操作类sun.misc.Unsafe,它是Java中对大多数锁机制实现的最基础类.请注意,JDK 1.8和之前JDK版本的中sun.misc.Un ...

  5. Python_记一次网站数据定向爬取实现

    记一次网站数据定向爬取实现 by:授客 QQ:1033553122 测试环境: Python版本:Python 3.4 Win7 请勿用于商业及非法用途,仅供学习研究用,否则后果自负 数据爬取场景 如 ...

  6. Android ListView的item背景色设置以及item点击无响应等相关问题

    Android ListView的item背景色设置以及item点击无响应等相关问题 在Android开发中,listview控件是非常常用的控件,在大多数情况下,大家都会改掉listview的ite ...

  7. Electron开发笔记—electron-builder打包流程

    该文章说明基于win平台下,mac及linux没有实验 关于electron-builder打包可以有两种方案: 1. 打包成文件夹及绿色免安装: electron-builder --dir(依赖w ...

  8. 你的leader还在考核你的千行代码Bug率吗?

    管理学大师德鲁克说:你如果你无法度量它,就无法管理它.要想做有效的管理,就很难绕开度量的问题. 软件开发的过程或者技术团队的管理也存在着如何去合理的度量效率的问题.而度量是把双刃剑,度量具有极强的引导 ...

  9. css图片垂直水平居中及放大(实现水平垂直居中的效果有哪些方法?)

    实现水平垂直居中方法有很多种: 一.万能法: 1.已知高度宽度元素的水平垂直居中,利用绝对定位和负边距实现. <style type="text/css"> .wrap ...

  10. Linux环境下执行java -jar xxx.jar命令如何让springboot项目在后台运行

    段落引用> 由于springboot内置了tomcat容器,我们通常会把项目打成jar或者war后直接使用java -jar xxx.jar命令去运行程序,但是当前ssh窗口被锁定或者按下ctr ...