Jquery知识点二 jquery下对数组的操作
2011-01-15 00:00
671 查看
首先是普通的数组(索引为整数的数组):
$.map(arr,fn);
对数组中的每个元素调用fn函数逐个进行处理,fn函数将处理返回最后得到的一个新的数组
$.each(array,fn)对数组array每个元素调用fn函数进行处理,没有返回值
还可以省略function的参数,这个时候this可以得到遍历的当前元素的值
然后是索引为字符串的 键值对数组,针对这类数组,
一般采用$.each(array,fn)来操作:
当然也可以使用无参的的function进行遍历;
当这类数据从服务器端获取时可以如下进行:
服务器端:
先实例化了三个person对象,然后放到一个集合中,最后把这个集合序列化成字符串流到客户端;
客户端:
客户端通过$.parseJSON()将后台传递过来的字符串转化为js数组对象,接下来我们就使用操作普通数组的方式来操作这个得到的数组
第三种就是通过标签选择器获取的Jquery对象数组,
在浏览器中运行的效果为:
在dom加载完成后为每一个p元素动态的添加了文本,首先$("p")获取p标签的集合,相当于Javascript中的document.getElementByTagName只是这里得到的是Jquery对象的数组,这样就有了Jquery固有的隐式迭代的功能,后面的text("这是p标签")的操作就迭代到了每一个P标签上,我们也可以显示的调用each函数来显示的迭代获得的Jquery对象数组,下面的代码同样可以实现上面的效果:
$.map(arr,fn);
对数组中的每个元素调用fn函数逐个进行处理,fn函数将处理返回最后得到的一个新的数组
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1]; var newarr = $.map(arr, function(item) {return item*2 }); alert(newarr);
$.each(array,fn)对数组array每个元素调用fn函数进行处理,没有返回值
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1]; $.each(arr, function(key, value) { alert("key:" + key + "value:" + value); });
还可以省略function的参数,这个时候this可以得到遍历的当前元素的值
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1]; $.each(arr, function() { alert(this); });
然后是索引为字符串的 键值对数组,针对这类数组,
一般采用$.each(array,fn)来操作:
var arr = { "jim": "11", "tom": "12", "lilei": "13" }; $.each(arr, function(key, value) { alert("姓名:"+key+"年龄:"+value); });
当然也可以使用无参的的function进行遍历;
当这类数据从服务器端获取时可以如下进行:
服务器端:
<%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Web; using System.Web.Script.Serialization; using System.Collections.Generic; public class Handler : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; Person p1 = new Person { Age = "22", Name = "tom" }; Person p2 = new Person { Age = "23", Name = "jim" }; Person p3 = new Person { Age = "24", Name = "lilei" }; IList<Person> persons = new List<Person> {p1,p2,p3}; JavaScriptSerializer js = new JavaScriptSerializer(); string s= js.Serialize(persons); context.Response.Write(s); } public class Person { public string Name { get; set; } public string Age { get; set; } } public bool IsReusable { get { return false; } } }
先实例化了三个person对象,然后放到一个集合中,最后把这个集合序列化成字符串流到客户端;
客户端:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="../myjs/jquery-1.4.2.js" type="text/javascript"></script> <script type ="text/javascript" > $.get("Handler.ashx", function(data) { var persons = $.parseJSON(data); $.each(persons, function(key, person) { alert("Age:"+person.Age+"Name:"+person.Name) }); }); </script> </head> <body> </body> </html>
客户端通过$.parseJSON()将后台传递过来的字符串转化为js数组对象,接下来我们就使用操作普通数组的方式来操作这个得到的数组
第三种就是通过标签选择器获取的Jquery对象数组,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="../myjs/jquery-1.4.2.js" type="text/javascript"></script> <script type ="text/javascript" > $(function() { $("p").text("这是p标签"); }); </script> </head> <body> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> </body> </html>
在浏览器中运行的效果为:
在dom加载完成后为每一个p元素动态的添加了文本,首先$("p")获取p标签的集合,相当于Javascript中的document.getElementByTagName只是这里得到的是Jquery对象的数组,这样就有了Jquery固有的隐式迭代的功能,后面的text("这是p标签")的操作就迭代到了每一个P标签上,我们也可以显示的调用each函数来显示的迭代获得的Jquery对象数组,下面的代码同样可以实现上面的效果:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="../myjs/jquery-1.4.2.js" type="text/javascript"></script> <script type ="text/javascript" > $(function() { $("p").each(function() { $(this).text("这是p标签"); }); }); </script> </head> <body> <p></p> <p></p> <p></p> <p></p> <p></p> <p></p> </body> </html>
相关文章推荐
- Jquery知识点二 jquery下对数组的操作
- Jquery操作Json数组
- Jquery数组和对象操作
- 在jquery中,遍历对象和数组,经常会用到$().each和$.each(),两个方法。两个方法是有区别的,从而这两个方法在针对不同的操作上,显示了各自的特点。 $().each,对于这个方法,在
- JQuery 操作数组 each、map、grep、filter
- javascript、JQuery操作数组、Json对象、缓存
- Jquery 数组操作大全
- Jquery 数组操作大全个人总结
- jquery 中json数组的操作(转)
- 备忘篇——jQuery中操作数组
- JQuery学习笔记——基础知识和数组以及字符串操作
- jquery 中json数组的操作
- Jquery操作数组元素(三)字符串数组与数值数组的排序
- jQuery操作数组的方法
- jquery与js对数组的操作
- JQuery操作数组
- Jquery数组操作
- Jquery:对数组的操作
- JQuery对数组的一些操作总结
- jquery操作数组和对象的一些常用函数