gpt4 book ai didi

jquery - 当 jQuery 本身被传递时,到底会发生什么?

转载 作者:行者123 更新时间:2023-12-01 00:24:07 26 4
gpt4 key购买 nike

所以我有一个难题,希望有人已经知道答案。阅读 jQuery 源代码后,我还没有明白这里到底发生了什么。

 $('#div')      //returns a jQuery object
$( $('#div') ) // returns an identical jQuery object
$( $( $( $( $( $('#div') ) ) ) ) ) // returns the same idential object

我在插件开发中遇到过一些实例,我不知道需要一个 sting 选择器或一个 jQuery 对象。在这些情况下,我只是将选择器或 jQuery 对象传递到 jQuery 中,这样我就可以保证得到我想要的 jQuery 对象。效果不错,但是感觉太神奇了。当我这样做时到底发生了什么?有更好的办法吗?

最佳答案

基本我认为在函数 $(...) 中存在一些基本情况。

  • In Arg 是 String 类型,传递它并查找或创建 HTML Dom 元素,然后将其封装到 JQuery 对象中。
  • Arg 是 HTML Dom 类型,将对象封装为 JQuery 对象
  • Arg 是 JQuery 对象,按原样返回

但实际上存在更多情况,并且在此之前进行了大量的调试和错误检查。

查看更多信息 http://jsapi.info/jquery/1.8.0/jQuery.fn.init我可以从代码中看到什么,如果我们有的话。

var x = $('#div');
var y = $(x);

xy 的内容相等但xy的内存不相等。

假设我们有:

class $ {
var x;
$($ t) {
this.x = t.x
}
}

如果我们都调用$,这将具有相同的内在值(value)但实际上两个不同的对象并不相同。

关于jquery - 当 jQuery 本身被传递时,到底会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12502610/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com