范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

jQuery遍历不同类型的集合数据294

  集合数据有简单是键值对集合,比较复杂的数组套集合或集合套集合,更复杂的集合数组相互嵌套的集合
  根据不同类型集合数据的特点使用对应的循环遍历方法以获取和应用集合数据
  1 循环简单集合
  简单的集合数据一般使用forin或者jQuery的each()方法,通过数组数据作对比 //数组 var arr = ["河南", "河北", "山东"];  for (var i = 0; i < arr.length; i++) {      console.log("索引(下标): " + i + " 值: " + arr[i]);  } //集合  var datas = { "hn": "河南", "hn": "河南", "hb": "河北", "sd": "山东" };  console.log("=======forin循环========");  for (var key in datas) {      //键:相当于数组的索引(下标)   值:下标对应的数据      console.log("键: " + key + " 值: " + datas[key]);  } //===============================================  console.log("=======JQ的 each()方法 ========");  $.each(datas, function (k, v) {    //k:对应集合的key     v:对应集合的datas[key])      console.log("键: " + k + " 值: " + v);  });
  JQ的each()方法比forin循环优化了对集合值的处理
  循环简单集合数据
  2 循环数组集合
  2.1 使用for或者JQ的map()方法循环数组集合数据 var ps = [{ "name": "张三", "age": 18 }, { "name": "李四", "age": "20" }]; console.log("==========for循环============"); console.log(""); for (var i = 0; i < ps.length; i++) {     //p为当前索引下的一个集合     var p = ps[i];     console.log(p);     //通过集合p点属性名(或者中括号方式) 得到 集合对应的值     console.log("p.name: " + p.name + "  p.age: " + p.age);     console.log("p["name"]: " + p["name"] + "   p["age"]: " + p["age"]);     console.log(""); } //=======JQ的map()方法================ $.map(ps, function (item, index) {       console.log("第"+index+"个集合,两个属性值为:  "+item.name+" "+item.age); });A方式:   var p = ps[i];   console.log("p.name: " + p.name + "  p.age: " + p.age); B方式:   console.log("ps[i].name: " + ps[i].name + "  ps[i].age: " + ps[i].age); //B方式比A方式少了一个变量 map()方法: console.log("第"+index+"个集合,两个属性值为:  "+item.name+" "+item.age); //map()方法的item等价于B方式的ps[i]
  对比后发现JQ的map()方法比for循环优化了循环时下标对应集合名称的处理
  数组集合中,每个索引对应的是一个对象集合,要得到对象中的值通过 对象点属性名 或者 中括号属性名
  for与forin嵌套循环数组集合数据,输出结果类似不再截图 for (var i = 0; i < ps.length; i++) {     for (var item in ps[i]) {         var p = ps[i];         console.log("键: " + item + "  值: " + p[item]);         //等价于下面的写法         console.log("键: " +item+"  值: "+ ps[i][item]);     } }
  3 循环集合套集合
  使用forin或者jQuery的map()或each()方法循环集合套集合数据var ps = { "p1": { "name": "张三", "age": 18 }, "p2": { "name": "李四", "age": "20" } }; console.log("==========forin循环============"); for (var key in ps) {     var psi = ps[key];     console.log("键: " + key + " 得到集合: " + psi);     //psi.name<===>ps[key].name或者 ps[key]["name"]     console.log("值: " + psi.name + "  值: " + psi.age); } console.log("==========map()方法============"); $.map(ps, function (item, index) {     console.log("键: " + index + " 得到集合: " + ps[index]);     console.log("值: " + item.name + "  值: " + item.age); }); console.log("==========each()方法============"); $.each(ps, function (k, v) {     console.log("键: " + k + " 得到集合: " + v);     console.log("值: " + v.name + "  值: " + v.age); });
  使用双层forin循环,循环集合套集合数据 var ps = { "p1": { "name": "张三", "age": 18 }, "p2": { "name": "李四", "age": "20" } };  for (var key in ps) {      console.log("键: " + key + " 得到集合: " + ps[key]);      //key为 p1 时  ps[key]对应集合{ "name": "张三", "age": 18 }      //key为 p2 时  ps[key]对应集合{ "name": "李四", "age": "20" }       //下面的循环是为 key=p1时循环集合{ "name": "张三", "age": 18 }的值      for (var key2 in ps[key]) {                              //第一次循环          //key2为 name 时 值为 张三          //key2为 age  时  值为 18          //第二次循环          //key2为 name 时 值为 李四          //key2为 age  时  值为 20          var pk=ps[key];          //ps[key][key2]          console.log("键: " + key2 + "  值: " + pk[key2]);      }  }
  双层forin循环
  小结
  数组类型的数据使用for或者JQ的map()方法
  集合类型的数据使用forin或者JQ的each()方法
  所以不论集合类型与数组类型的数据如何相互嵌套,遍历使用时只看当前遍历的是其中哪个类型的

土豆丝饼怎么做好吃?用不用加鸡蛋和面粉?你好,我是爱做饭的多多妈妈,也是美食头条号魔多厨房的作者,很高兴回答这个问题。土豆丝饼是一种简单易做的家常煎饼,既然是煎饼,当然是需要用到面粉的,而鸡蛋是可加可不加,不过如果想要做常吃鲈鱼对身体有哪些好处?金秋十月正是鲈鱼最为肥美的时候,十月打捞的鲈鱼肉质紧实细嫩,味道鲜美,与鲤鱼鳜鱼及黑龙江大白鱼并称为中国四大淡水名鱼。鲈鱼营养物质丰富的,具有很好的营养价值和保健功能,是秋季滋补养我是肺癌晚期患者,这几天饮食各方面还可以,就是感觉腿上无力,这是怎么回事?肿瘤病人发生疲乏的情况很多,也叫癌因性疲乏,对人危害没有恶心呕吐胸闷气短疼痛等症状直接明显,往往引不起其他人的重视,而病人常常因疲乏导致生活质量下降。癌因性疲乏有个特点是休息睡眠后怎么才能蒸出白白胖胖的大馒头?馒头是最家常的主食,并且发面的对肠胃也很好,好多年轻朋友都怕蒸馒头,说实话,我以前也蒸不好,这做的多了,自然就掌握到窍门了。关键点有三1发面2二次饧发3蒸好后不要立即开盖避免回缩,iPhone电池什么时候需要更换,如何检测?随着智能手机的更新换代,虽然手机的新功能层出不穷,但是智能手机仍然遗留了一个难以解决的问题续航能力不足,iPhone也不例外。确实,电池问题一直是智能手机的通病,也是广大手机党关心怎么确认孩子的生长速度是不是正常的?我们可以用孩子后一次测量的身高数减去前一次的身高数,然后除以间隔月份数,得出的数值乘以12,就等于这一年的生长速度。例如,孩子3月的身高是112。5厘米,9月是116。3厘米,我们什么样的白酒,可以称之为优质白酒?我是一个纯粮食酒酿酒人,也许有资格回答一下这个问题。首先,我们要知道怎么定义优质白酒。在我看来,优质白酒首要包括这三个方面纯粮食酿造,口感纯正,不上头不头疼口干。纯粮食酿造这是肯定沈阳周边哪里的温泉好?现在人们生活水平有了提高,洗温泉保养身体就成了一个娱乐休闲的好选择。如果想在沈阳的周边百公里之内寻找很多温泉,鞍山有汤岗子温泉是有几十年的历史了,泥温泉对身体有好处,因为那里含有很最近想买部20万左右的混动车,有什么推荐的吗?广汽丰田雷凌提到雷凌大家一定不陌生,神车卡罗拉的姊妹车型,也是丰田TNGA架构下的油电混合动力入门级轿车。日前,新款雷凌双擎正式上市,依然提供6款车型,相比于老款车型,新车外观和内每天喝二两酒,连续喝一年会怎样?感谢邀请。喝酒的话题一直属于热点言论,无论是白酒还是红酒,在特殊酒文化的承载下,亲朋聚会公事宴请时都免不了要喝点酒,酒虽然可以增进感情,但是酒同样会伤害您的身体。很多人吃饭必喝酒,河北哪里人最能喝酒?根据我自己以前各种出差的经历来说张家口人。张家口人的彪悍之处在于很多人有饮酒的习惯,部分人甚至上午也会饮酒。不过我个人的感觉,在劝酒方面,张家口人并不是最狠的,我吃过几次饭的经历来
信创数字政府医疗信息化教育信息化电子身份证大数据信创数字政府医疗信息化教育信息化电子身份证大数据军工华为!这家全国政务服务龙头公司还是国家数字政府建设服务联盟副理事长单位,政务服务产品直接服务公务人员超1000万及社会公众超3亿WTT新乡总决赛第二天赛况总结,小胖出局,女队半决赛会师张本智和32波尔双方之前交手3次,波尔胜过两次。但最近2年没有过交锋!首局比赛波尔给张本中间正手位的球,张本基本都拉了回去。虽然第一局后半段失误增多,但还是拿下了比赛。感觉张本的正11!武磊回归中超爆发,失去武磊后,西班牙人成绩也不差北京时间10月29日凌晨3点,西甲第12轮的一场比赛马洛卡VS西班牙人。武磊离队后,还有没有中国球迷关注西班牙人的比赛呢?今年夏窗,在西班牙人已经踢不上球的武磊重返中超,中超第19三星杯围棋赛首轮战罢柯洁李轩豪无缘16强新华社北京10月28日电第27届三星杯世界围棋大师赛28日结束了首轮即32强的比赛,柯洁不敌韩国名将朴廷桓,李轩豪负于韩国棋手金明训,二人双双无缘16强。在当日的焦点战中,柯洁执黑恩比德缺阵哈登低迷,马克西44分76人轻取猛龙76人客场11290轻取猛龙。乔尔恩比德缺阵,马克西上来就命中2记三分,托拜厄斯哈里斯打21,梅尔顿抛投,76人114领先开局。西亚卡姆包办猛龙前4分,巴恩斯阿奴诺比连中三分。76米切尔勒韦尔各砍41分骑士加时擒凯尔特人获4连胜NBA常规赛10月29日继续进行,最终,骑士以132123战胜凯尔特人,骑士获得4连胜!首节开始,骑士上来手感正佳,内外结合打出229开局!霍福德内线接连得分止血,随后双方一阵互有字母哥30149雄鹿擒尼克斯获4连胜NBA常规赛10月29日继续进行,最终,雄鹿以119108战胜尼克斯,雄鹿获得4连胜并终结了尼克斯的三连胜。首节开始,字母哥上来连拿5分率先打出80开局!布伦森和富尼耶迅速合拿6分迈克尔波特2213约基奇12106,掘金大胜爵士NBA202223赛季常规赛,掘金主场117101大胜爵士。开局奥利尼克戈登康利布朗都中三分,马尔卡宁和波特连中三分,双方狂飙远射。之后穆雷中投约基奇各有得分,布朗三分命中杰夫格林努尔基奇2715开拓者胜火箭,杰伦格林狂铁19中4NBA202223赛季常规赛,开拓者主场125111胜火箭。利拉德今日缺阵,努尔基奇连续得分。贾巴里史密斯连中三分火箭一度领先,不过西蒙斯连中三分,之后格兰特尤班克斯都有得分,开拓男篮公布世预赛第五窗口期集训名单郭艾伦赵继伟缺席周琦在列北京时间10月29日,202223赛季CBA常规赛第一阶段将于10月30日结束,CBA联赛随即将进入休赛期,为中国男篮备战参加男篮世预赛亚大区第五窗口期的比赛让路。今日,中国男篮通漳河细说早听说漳河的蜜桔很有名。在一个橙黄桔绿的时节,我妈妈和我的几个好朋友一起到美丽的避暑山庄漳河去摘桔子。下了几天的雨,天终于放晴了。灿烂阳光的撒满了山庄的每一个角落,雨后的山林,被洗