jquery 实现链式编程的原理是什么?
1、jQuery 中的$.each 和$(选择器).each()有什么区别?
1、$.each() 可以针对所有对象或者数组进行遍历
2、$(selector).each() 针对jquery选择器返回的jquery内部对象进行遍历
2、jQuery 中的$.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() 有什么区别?
1、执行时间不同
window.onload必须等到页面内的所有元素()加载完毕后才能执行。
$(document).ready()是页面DOM结构绘制完毕后就执行,不必等到加载完毕。
2、执行次数不同
window.onload不能同时执行多个,如果同一个页面上面有多个window.onload方法,只会执行最后一个window.onload,也就是向上覆盖。
$(document).ready()可以同时执行多个,如果同一个页面上有多个$(document).ready()方法,JQuery能够很好地处理这些情况,每次调用$(document).ready()方法都会在现有的行为上追加新的行为,这些行为函数会根据注册的顺序依次执行。
3、简化写法不同
window.onload没有简化写法。
$(document).ready()有两种简化写法:$().ready(function)、$(function)。
4、jQuery 实现链式编程的原理是什么?
1、实现链式编程的核心,是对象中的每一个方法都会返回当前对象。
var 对象 = {
方法名:function(){
// …
return this; // 实现链式编程的核心this
}
}
2、在方法中,js提供一个this的关键字,表示当前对象。

浙公网安备 33010602011771号