正文
jquery迭代,jquery隐式迭代
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
jQuery的优势?
jQuery的优势:
1、轻量级。jQuery非常轻巧,采用UglifyJS()压缩后,大小保持在30KB左右。
2、强大的选择器。
允许开发者使用从CSS1-CSS3几乎所有的选择器,以及jQuery独创的高级而复杂的选择权。
3、出色的DOM操作的封装。
jQuery封装了大量常用的DOM操作,使开发者在编写DOM操作相关程序的时候,更得心应手。
4、可靠的事件处理机制
5、完善的Ajax
jQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。
6、不污染顶级变量。
7、出色的浏览器兼容性
8、链式操作方式
对发生在同一个jQuery对象上的操作,可以直接连写而无重复获取对象。
9、隐式迭代
当想找到带有“.myclass”类的全部元素,并将其隐藏,无需循环遍历每一个返回的元素。
10、行为层与结构层的分离
开发者可以使用jQuery选择器选中元素,然后直接给元素添加事件。使各个方面的开发人员各司其职,互不干涉。
11、丰富的插件支持
12、完善的文档
13、开源
Jquery主要是做什么的?
jQuery-是轻量级的js库 , (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+), jQuery2.0及后续版本将不再支持IE6/7/8浏览器。jQuery使用户能更方便地处理HTML(标准通用的标记语言 下的一个应用)、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件 可供选择。jQuery能够使用户的html页面保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需要定义id即可
jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。如今,jQuery已经成为最流行的javascript库,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。
jQuery是免费、开源的,使用MIT许可协议。jQuery的语法设计可以使开发者更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出功能强大的静态或动态网页。
jQuery,顾名思议,也就是JavaScript和查询(Query),即是辅助JavaScript开发的库。
jQuery 3.0 有哪些新增特性
jQuery 3 中最重要的几个新增特性。
for...of Loop
for...of 循环
在 jQuery 3 中,我们可以用 for...of 循环语句来迭代一个 jQuery 集合中的所有 DOM 元素。这种新的迭代方法是 ECMAScript 2015(即 ES6)规范中的一部分。这个方法可以对 “可迭代对象”(比如 Array、Map、Set 等)进行循环。
当使用这种新的迭代方法时,你在循环体内每次拿到的值并不是一个 jQuery 对象,而是一个 DOM 元素(译注:这一点跟 .each() 方法类似)。当你在对一个 jQuery 集合进行操作时,这个新的迭代方法可以少许改善你的代码。
关于jQuery,什么叫隐式迭代
举个栗子:
我想把ul下的每个li都加个样式
jquery写法就是:$("ul li").addClass("test");
这个意思就是把ul下的每一个li都加了test的样式,我们并没有去取得所有li然后循环加样式,这就是隐式迭代。
如果你用原生的js就要取得所有li然后循环,然后操作了。
关于jquery的疑问,什么叫做"隐式迭代
隐式迭代就是悄咪咪的进行迭代遍历。
最明显的就是给一个list的字体上颜色。
我们对这个list做字体颜色上色。用jq就可以直接写成
$('.goods-items').css('color','red')
非常简单,直接对所有的li写了样式。
但是如果是原生JavaScript,就要
let items = document.getElementsByClassName('goods-items')
for(let i = 0;iitems.length;i++){
items[i].style.color = 'red'
}
很明显的,JavaScript要遍历,就是显性迭代;
jq不需要做遍历,就是隐形迭代
JQuery的链式编程,隐式迭代是啥意思
链式编程,隐式迭代是jQuery的一个特性,它支持以链条的形式,不用显示的迭代多层数据。
举个列子:
//普通做法是这样的
obj.name
=
'小明';
obj.age
=
155;
//链式编程是这样的。
obj.name('小明').age(15);