数码资讯
关于jQuery中的每个方法(jQuery做了什么)
1。据估计,许多人将使用jQuery中的每一种方法。 然后看看jQuery做了什么。 在jQuery中找到每个源: 复制代码代码如下所示: 一:功能(对象,回调,args){ var名称,i = 0, 长度= object.length, isobj =长度=定义的jquery.isfunction
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
1。据估计,许多人将使用jQuery中的每一种方法。
然后看看jQuery做了什么。
在jQuery中找到每个源:
复制代码代码如下所示:
一:功能(对象,回调,args){
var名称,i = 0,
长度= object.length,
isobj =长度=定义的jquery.isfunction(对象)| |;
如果(args){
如果(isobj){
对于(对象中的名称){
如果(callback.apply(对象{,名字,args)= false){
打破;
}
}
{人}
为(;;i <长度;;){
如果(callback.apply(对象{,我+ +,args)= false){
打破;
}
}
}
特别快速的A,A,案例,最常用的
{人}
如果(isobj){
对于(对象中的名称){
如果(callback.call(对象{名称,对象{姓名、名称})= = = false){
打破;
}
}
{人}
为(;;i <长度;;){
如果(callback.call(对象{我对象{我,我+ + })= = = false){
打破;
}
}
}
}
返回对象;
},
这段代码还是比较简单的,应该没有问题。
为了测试这个东西,我写了下面一段JS;
复制代码代码如下所示:
每个($()),函数(){()
console.log(秀);
});
然后添加一段HTML:
复制代码代码如下所示:
然后将jQuery的源代码进行调试以获得正确的结果,但遗憾的是。
如您所见,这里的对象不是我想要的三个HTML对象,这是用js构建的8种数据类型。
然后将一段代码添加到jQuery的源代码中:
复制代码代码如下所示:
console.log(object.prototype.tostring(对象));
console.log(长度);
以下输入如下所示:
也就是说,当加载文档时,jQuery将使用每个对象遍历DOM对象,即使没有使用它。
复制代码代码如下所示:
$(函数(){())
});
当指定的对象被遍历时,它仍然在父元素上冒泡。
2。根据jQuery的源代码使用回调函数参数
复制代码代码如下所示:
$($()),函数(A,B){
console.log(++ $()。Attr(类));
})
从源代码中,您可以看到:
复制代码代码如下所示:
callback.call(对象{我},我对象{我+ })
最后,通过调用方法将当前对象传递给回调函数,从而使当前对象中的属性可以用作上述操作。
如果我说一些复杂的东西,例如,在这里,我将$()作为对象转移到$()
例如,它不是一段时间内传递的jQuery或HTML对象,它是一个对象或数组。
数组中还有许多其他对象或方法。
这会产生更多的结果。
三.使用调用或应用程序实现回调模式。
从上面的代码中,您可以看到:
复制代码代码如下所示:
callback.call(obj,args)
复制代码代码如下所示:
Callback.apply({是},args)
这样的代码,你只需要通过回调函数,你可以自己打电话,这对提高代码的重用非常有用。
但也存在一些缺点,如代码可读性低、耦合度增加。
甚至为了记录,为了防止遗忘!
然后看看jQuery做了什么。
在jQuery中找到每个源:
复制代码代码如下所示:
一:功能(对象,回调,args){
var名称,i = 0,
长度= object.length,
isobj =长度=定义的jquery.isfunction(对象)| |;
如果(args){
如果(isobj){
对于(对象中的名称){
如果(callback.apply(对象{,名字,args)= false){
打破;
}
}
{人}
为(;;i <长度;;){
如果(callback.apply(对象{,我+ +,args)= false){
打破;
}
}
}
特别快速的A,A,案例,最常用的
{人}
如果(isobj){
对于(对象中的名称){
如果(callback.call(对象{名称,对象{姓名、名称})= = = false){
打破;
}
}
{人}
为(;;i <长度;;){
如果(callback.call(对象{我对象{我,我+ + })= = = false){
打破;
}
}
}
}
返回对象;
},
这段代码还是比较简单的,应该没有问题。
为了测试这个东西,我写了下面一段JS;
复制代码代码如下所示:
每个($()),函数(){()
console.log(秀);
});
然后添加一段HTML:
复制代码代码如下所示:
然后将jQuery的源代码进行调试以获得正确的结果,但遗憾的是。
如您所见,这里的对象不是我想要的三个HTML对象,这是用js构建的8种数据类型。
然后将一段代码添加到jQuery的源代码中:
复制代码代码如下所示:
console.log(object.prototype.tostring(对象));
console.log(长度);
以下输入如下所示:
也就是说,当加载文档时,jQuery将使用每个对象遍历DOM对象,即使没有使用它。
复制代码代码如下所示:
$(函数(){())
});
当指定的对象被遍历时,它仍然在父元素上冒泡。
2。根据jQuery的源代码使用回调函数参数
复制代码代码如下所示:
$($()),函数(A,B){
console.log(++ $()。Attr(类));
})
从源代码中,您可以看到:
复制代码代码如下所示:
callback.call(对象{我},我对象{我+ })
最后,通过调用方法将当前对象传递给回调函数,从而使当前对象中的属性可以用作上述操作。
如果我说一些复杂的东西,例如,在这里,我将$()作为对象转移到$()
例如,它不是一段时间内传递的jQuery或HTML对象,它是一个对象或数组。
数组中还有许多其他对象或方法。
这会产生更多的结果。
三.使用调用或应用程序实现回调模式。
从上面的代码中,您可以看到:
复制代码代码如下所示:
callback.call(obj,args)
复制代码代码如下所示:
Callback.apply({是},args)
这样的代码,你只需要通过回调函数,你可以自己打电话,这对提高代码的重用非常有用。
但也存在一些缺点,如代码可读性低、耦合度增加。
甚至为了记录,为了防止遗忘!
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。