当前位置: 首页 > news >正文

网站管理与维护方案廊坊seo管理

网站管理与维护方案,廊坊seo管理,做网站有多难,网站建设的几种形式伪数组 javascript的伪数组理解什么是伪数组? 定义:obj instanceof Array false 但是有length属性以下是常见伪数组:argumentsNodeList、HTMLCollectionjQuery对象伪数组转为真数组 Array.prototype.splice.call(obj)自定义伪数组 类数组 //从对象构建…

伪数组

javascript的伪数组理解

什么是伪数组?

  • 定义:obj instanceof Array === false 但是有length属性
  • 以下是常见伪数组:
  • arguments
  • NodeList、HTMLCollection
  • jQuery对象

伪数组转为真·数组

  • Array.prototype.splice.call(obj)

自定义伪数组

类数组

//从对象构建伪数组的两个条件:
//1. 具有length || 具有push\unshift\pop\shift中任意一个并调用(最终结果就是生成length这个属性)
//2. 具有名为splice的方法 
var obj={length:0,splice(){}
};
console.log(obj);var obj2={push:[].push, splice(){}
};
obj2.push();
console.log(obj2);

类数组当作数组使用的原理:length相当于obj的键名

var obj={length:0,splice(){},push:Array.prototype.push
};
obj[0]=10;obj.push(1,2,3);
console.log(obj);//[1,2,3,splice:f,push:f]var obj2={length:1,splice(){},push:Array.prototype.push
};
obj2[0]=10;obj2.push(1,2,3);
console.log(obj2);//[10,1,2,3,splice:f,push:f]//上述push也可以用apply来写
{   push:function () {return [].push.apply(this,arguments);
}}

特别的,两种DOM伪数组的区别

1. getElementsByTagName 得到的是 HTMLCollections类

// 如果有一个ID为'test'的元素,可以直接取得
document.getElementsByTagName('div').test
  • 如上,ID元素会被直接列在HTMLCollections对象里的同名键中
  • item(),length,namedItem()

2.querySelector 得到的是 NodeList类

document.querySelectorAll('div').forEach((a,b,c)=>{console.log('第一个参数:' + a + '值');console.log('第二个参数:' + b + '键');console.log('第三个参数:' + c + '自身');
});
  • forEach()
  • item(),length
  • 典型ES6对象特性,entries,keys,values

共性

for(let i=0;i<list.length;i++){// 通过item方法获取值console.log(list.item(i))
}
  • 实际上,通过控制台观察发现,两者都具备iterator接口,都可以支持for ... of语法

相比来讲,querySelector内置forEach,会更方便

援引Arguments来说事

const {callee,//函数本身length,//参数长度[...'所有传入的参数']//可以用下标获得所有的按顺序得到的参数
}=arguments;
  • 此外,arguments也具备iterator接口,可以直接用for...of遍历

总结:

  1. 伪数组基本上属于一个概念问题,只需要知道的是--伪数组的原型一定不是数组,所以,不会有数组的所有方法,在使用的时候不能想当然的去直接用Array.prototype方法比如push,pop,concat等等
  2. 伪数组转为真数组的方法有好多种,列下思路:
  • 1.遍历伪数组存入真数组
  • 2.Array.prototype.splice.call(obj)
  • 3.Array.from()
  • 4.原型继承,arr.__proto__=Array.prototype
  • 5.其他工具库中的方法,如jQuery中的makeArray()toArray()等
http://www.wooajung.com/news/35129.html

相关文章:

  • 东营区建设局网站互联网销售公司
  • 政府门户网站建设的不足百度关键词指数
  • 河北省建设厅管网站网上广告怎么推广
  • 新兴街做网站公司成都seo优化公司排名
  • 网站建设知识点有哪些漏缺网络营销是什么?
  • 哈尔滨电子政务网站建设做引流推广的平台
  • 把别人的图片拿来做网站宁波seo推广定制
  • 有质感的wordpress主题南宁seo外包服务
  • 深圳极速网站建设费用怀化网络推广
  • 舆情报告总结长沙seo优化首选
  • 网站的汉化包怎么做网络推广外包公司哪家好
  • 义乌做网站的电话国外免费域名申请
  • 淘宝网站建设百度网络电话
  • 重庆玖玺国际做网站百度推广登录平台登录
  • ps做网站首页设计教程必应站长平台
  • 怎么做同城购物网站山西seo谷歌关键词优化工具
  • 西湖南昌网站建设公司谷歌收录提交入口
  • 网站流量 龙优化软件网站建设公司苏州
  • 怎么弄数据库备份做网站seo公司上海
  • 企业网站建设 价格青岛seo霸屏
  • 网站建设地带精准营销及推广
  • wordpress页面修改插件湖南seo服务
  • 华为云网站建设怎么设置选择项情感链接
  • 专业网站开发友情链接怎么弄
  • 私募网站建设网站seo视频
  • 亚马逊产品备案网站建设要求新闻稿代写
  • 怎样在谷歌上建设网站网站关键词怎么快速上排名
  • wordpress适合建什么网站开网站需要投资多少钱
  • 会员管理系统软件排名百度优化seo
  • 网站建设 任务网站怎么宣传