关于JS跟JQ面向对象

今天刚学习JQ。有个地方不是很理解:

 在JS中

var a=1;

var b=2;

a=b;

输出/2

 这里的a是被b覆盖的

 然后我在JQ中看到这个

var div = document.getElementsByTagName('div'); //dom对象

            var $div = $('div');

   //将dom节点div转化为$div的jquery对象

            // $div =  ?

            var div = $div;

var $first = $div.first(); //找到第一个div元素

$first.css('color', 'red'); //给第一个元素设置颜色

这里的var div = document.getElementsByTagName('div'); //dom对象去掉后代码依然有效。并且没有报错;

那么问题来了:这里的div被$div覆盖后,是JS中的对象还是JQ的对象?亦或者JS跟JQ不分彼此,只是区分DOM跟JQ?

朝花bu夕拾
浏览 1439回答 1
1回答

stone310

jq本来就是用JS写的,在jq中$("div")实际上是一个json格式,{0:div,1:div,2:div....}而JS中document.getElementsByTagName('div')是个类数组;[div,div,div]所以JQ的选择器只能用JQ的方法,JS的选择器只能用JS的方法
打开App,查看更多内容
随时随地看视频慕课网APP