jQuery中each与data

一:each(for循环)

1.each作用
for循环前面容器类型 将里面的元素交给后面的函数去处理 
有了each,就无需自己写for循环了
2.格式
$(容器类型 数组 自定义对象).each(function(索引,标签对象){console.log(索引,标签对象)})
3.注意
函数只能有两个参数
4.第一种方式
$('div')
w.fn.init(10) [div, div, div, div, div, div, div, div, div, div, prevObject: w.fn.init(1)]
5.一个参数index拿到的是索引
each类似于 for循环 前面这个数组 $('div') 将前面元素交给
后面函数去运行(一个参数index拿到的是索引)
$('div').each(function(index){console.log(index)})  

VM181:1 0
VM181:1 1
VM181:1 2
VM181:1 3
VM181:1 4
VM181:1 5
VM181:1 6
VM181:1 7
VM181:1 8
VM181:1 9

image

6.拿到数组里面索引和标签对象
each类似于 for循环 前面这个数组 $('div') 将前面的元素交给后面的函数去运行
function(index,obj)
index	: 索引
obj		: 当前标签对象
$('div').each(function(index,obj){console.log(index,obj)})  

VM243:1 0

​1​

VM243:1 1
​2​

VM243:1 2
​3​

VM243:1 3
​4​

VM243:1 4
​5​

VM243:1 5
​6​

VM243:1 6
​7​

VM243:1 7
​8​

VM243:1 8
​9​

VM243:1 9
​10​

image

7.第二种方式
1.自定义对象

前面可以放 容器类型 数组 自定义对象 
for循环前面这个容器类型 将里面的元素交给后面的函数去处理 
index 索引 obj 当前循环对象
$.each([111,222,333],function(index,obj){console.log(index,obj)})

VM484:1 0 111
VM484:1 1 222
VM484:1 2 333
(3) [111, 222, 333]

总结:
有了each之后 就无需自己写for循环了 用它更加的方便

image

二:data(隐型存储)

1.data的作用
能够让标签帮我们临时存储数据 隐性存储 并且用户肉眼看不见!
2.创建data隐性存储
1给前面这个数组所有的对象都加了一个 k: 'info' vlaue: '我原谅你了!' 数据进去了
$('div').data('info','回来吧,我原谅你了!')
w.fn.init(10) [div#d1, div, div, div, div, div, div, div, div, div, prevObject: w.fn.init(1)]
         
2.拿到第一个标签.data('info')取值          
$('div').first().data('info')
"回来吧,我原谅你了!"
  
3.取最后一个值               
$('div').last().data('info')
"回来吧,我原谅你了!"
 
4.验证取没有的值               
$('div').first().data('xxx')
undefined

5.删除第一个标签'info'对应的值 其他的标签属性还有        
$('div').first().removeData('info')
w.fn.init [div#d1, prevObject: w.fn.init(10)]
 
6.第一个标签'info'对应的值不在有了(被删除掉了)          
$('div').first().data('info')
undefined
           
7.验证其他对应的值还存在           
$('div').last().data('info')
"回来吧,我原谅你了!"

image

posted @ 2022-02-16 23:34  AlexEvans  阅读(143)  评论(0编辑  收藏  举报