Day17
1-jquery 中的$.each 和$(选择器).each()有什么区别?
2-query 中的$.each 和 js 中的 foeEach()有什么区别?
3-window.onload 和$(docuMent).ready() 有什么区别?
4-jquery 实现链式编程的原理是什么?
1-jquery 中的$.each 和$(选择器).each()有什么区别?
$().each()多用于遍历dome的html标签;
$.each()多用于遍历数组对象。
2-query 中的$.each 和 js 中的 foeEach()有什么区别?
回调函数中参数的位置不一样,forEach中为第一个参数为ele,第二个为index。each中第一个为index,第二个为ele;
回调函数中是否有返回值,forEach中没有返回值,each有返回值,返回被遍历的数组
forEach不能遍历对象,可以使用for in;
而each可以通过jq的讲台方法来遍历,即$.each(obj,function(key,value){})
3-window.onload 和$(docuMent).ready() 有什么区别?
window.onload
当一个文档完全下载到浏览器中时,会触发 window.onload 事件。这意味着页面上的全部元素对 javascript 而言都是可以访问的,这种情况对编写功能性的代码非常有利,因为无需考虑加载的次序。
$(document).ready()
通过 $(document).ready() 注册的事件处理程序,则会在 DOM 完全就绪并可以使用时调用。虽然这也意味着所有元素对脚本而言都是可以访问的,但是,缺不意味着所有关联的文件都已经下载完毕。 换句话说,当 HTML 下载完成并解析为 DOM 树之后,代码就可以运行。
4-jquery 实现链式编程的原理是什么?
①实现链式编程的核心,是对象中的每一个方法都会返回当前对象。
var 对象 = {
方法名:function(){
// …
return this; // 实现链式编程的核心this
}
}
②在方法中,js提供一个this的关键字,表示当前对象。