//商品选择完成跳转到提交订单页面
function orderDetails(){
  var shopCarIds = [];//存放商品的数组
  var objs = [];
  objs = $("div[id^='of_am_']");//所有商品的id
  for(var i = 0;i < objs.length; i++){
    var orderId = objs[i].id.replace("of_am_","");//获取id
    var nomber = $("#of_am_"+orderId+"").html();
    var a = [orderId,nomber]//多数据数组
    if(nomber > 0){
      shopCarIds.push(a);
    }
  }
  if(shopCarIds.length > 0){
    location.href = "${contextPath}/group/enterOrder";
  }else{
    wxAlert("请选择洗衣类型!");
  }
}

1.定义并赋值
  var str = ['java', 'php', 'c++', 'c#', 'perl', 'vb', 'html', 'css'];

2.用{}定义后赋值:

var array = {};//定义一个数组
   array[0] = "Tom";
   array[1] = "Male";
   array[2] = "123456@qq.com";

数组的下标也可以这样:

array['name'] = "Tom";
   array['sex'] = "Male";
   array['mail'] = "123456@qq.com";

  3.使用new Array()定义:

(1).

var a = new Array(10);
     定义长度为10的数组,此时为a已经开辟了内存空间,用数组名称加 [下标] 来调用。

(2).

var a = new Array();
     a[0] = 10;
     a[1] = "Tom";
     a[2] = 12.6;

定义一个可变数组,并进行赋值。数组的赋值还可以使用push()方法,这样可以避免使用下标的麻烦:

a.push(10);

a.push("Tom");

a.push(12.6);

 (3).

var a = new Array(1, 2, 3, 4, 5);
     var b = [1, 2, 3, 4, 5];
    a 和 b 都是数组,只不过b用了隐性声明,创建了另一个实例,此时如果用alert(a==b)将弹出false。

 (4).

数组就是某类数据的集合,数据类型可以是整型、字符串、甚至是对象。
Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维数组的功能。

数组里面可以包含对象,所以可以把数组里面的某个元素再声明为数组,例如
     var a = new Array();
     a[0] = new Array();
     a[0][0] = 1;
     alert(a[0][0]); //弹出 1

声明的时候赋值
     var a = new Array([1,2,3], [4,5,6], [7,8,9]);
     var b = [[1,2,3], [4,5,6], [7,8,9]];

二、数组的操作:

1.通过数组[下标]来读写数组的元素:

如:a[0] = 10;
        a[1] = "Tom";
        a[2] = 12.6;

下标的范围是 0 – (23(上标2) -1),当下标是负数、浮点甚至布尔值的时候,数组会自动转换为对象类型。

如:
   var b = new Array();
   b[2.2]  = "XXXXX";
   alert(b[2.2]); //-> XXXXX

 2.通过push(),pop()方法读写元素:

(1).push

往数组后面添加数组,并返回数组新长度
    var a =    ["aa","bb","cc"];
    document.write(a.push("dd"));    // -> 4

(2).pop

删除数组最后一个元素,并返回该元素
     var a =    ["aa","bb","cc"];
     document.write(a.pop());    // -> cc

  3.数组的循环:

(1).for循环:

var a = [1,2,3,4,5,6];
     for(var i =0; i<a.length; i++){
          alert(a[i]);
     }

(2).foreach循环:

var a = [1,2,3,4,5,6];
      for(var e in a){
          alert(e);
       }
   还是依次弹出1至6,for…in是历遍对象(数组是特殊的对象)对象,用在数组上,因为数组没有属性名,所以直接输出值,这结构语句用在对象上,例如下面
     var a = {x:1,y:2,z:3};
     for(var e in a){
       alert(e    + ":" + a[e]);
     }

此时e取到的是属性名,即 x、y、x,而要取得值,则采用 数组名[属性],所以 a[e] 等同于 a[“x”]、a[“y”]、a[“z”]。

 4.将数组转换为字符串:

(1).join("分隔符")

用指定间隔符连起来,把数组转为字符串
     例:
       var a = ['a','b','c','d','e','f','g'];
       alert(a.join(",")); // -> a,b,c,d,e,f,g
    需要注意的是只转换一维数组里面,如果数组里面还有数组,将不是采用join指定的字符串接,而是采用默认的toString()。

(2).toString()

把数组转为字符串,不只数组,所有对象均可使用该方法
    var a = [5,6,7,8,9,["A","BB"],100];
    document.write(a.toString());    // -> 5,6,7,8,9,A,BB,100

(3)valueOf
    根据不同对象返回不同原始值,用于输出的话跟toString()差不多,但是toString()是返回string类型,而valueOf()是返回原对象类型。
    var a = [1,2,3,[4,5,6,[7,8,9]]];
   document.write(a.valueOf());    // -> 1,2,3,4,5,6,7,8,9

5.使用slice返回数组片段

var a = ['a','b','c','d','e','f','g'];
    alert(a.slice(1,2)); // -> b
    alert(a.slice(2));    // -> c,d,e,f,g
    alert(a.slice(-4));   // -> d,e,f,g
    alert(a.slice(-2,-6));    // -> 空

a.slice(1,2),从下标为1开始,到下标为2之间的数,注意并不包括下标为2的元素
    如果只有一个参数,则默认到数组最后。
   -4是表示倒数第4个元素,所以返回倒数的四个元素。
  alert(a.slice(-2,-6))从倒数第2开始,因为是往后截取,所以显然取不到前面的元素,所以返回空数组,如果改成 a.slice(-6,-2) 则返回b,c,d,e。

参考:

http://www.chncms.com/2011/03/31/JAVASCRIPTARRAY.html

jq数组,得到遍历生成的id后面的id的更多相关文章

  1. EL语法 ${person.id} 这里面的id指的是实例对象的成员变量

    EL语法 ${person.id} 这里面的id指的是实例对象的成员变量

  2. Mybatis如何在插入(ID是后台生成的)后返回ID?

    获得ID方法:

  3. 数据库分表分区后的ID生成之雪花生成

    转自https://www.cnblogs.com/jajian/p/11101213.html 传统的单体架构的时候,我们基本是单库然后业务单表的结构.每个业务表的ID一般我们都是从1增,通过AUT ...

  4. phpcms v9二级栏目生成到根目录后三级栏目无法访问的解决办法

    这个栏目问题折腾了我一天多,可怜我这个美工又不会程序!!! 我的问题是: 我的栏目设置如下: 一级栏目[生成到根目录(是)]> 二级栏目[生成到根目录(是)] > 三级栏目[生成到根目录( ...

  5. JavaScript中的数组对象遍历、读写、排序等操作

    以百度前端技术学院的js任务三为例,复习一下关于js数组的几个点 题目 <!DOCTYPE> <html> <head> <meta charset=&quo ...

  6. 常用jq选择器和遍历的使用

    1.jq的选择器,常用有哪些? class id > ~ ul li a 2.遍历的使用(在使用用遍历节点时,我们的注意遍历在不传递参数(也就是传参),代表的是传递局部全局,也就是"* ...

  7. javascript(基础)_对数组的遍历方法总结(find, findIndex, forEach,)

    一.前言                                                                                                ...

  8. jQuery生成一个DIV容器,ID是"rating".

    我们需要一些服务器端代码,这个例子中用到了一个PHP文件,读取rating参数然后返回rating总数和平均数.看一下rate.php代码.虽然这些例子也可以不使用AJAX来实现,但显示我们不会那么做 ...

  9. JavaScript中数组中遍历的方法

    前言 最近看了好几篇总结数组中遍历方法的文章,然而"纸上得来终觉浅",决定此事自己干.于是小小总结,算是自己练手了. 各种数组遍历方法 数组中常用的遍历方法有四种,分别是: for ...

随机推荐

  1. 关于UIView的userInteractionEnabled属性

    关于UIView的userInteractionEnabled属性 如果父视图为ParentView包含一个Button,如果再ParentView上添加子视图ChildView,且ChildView ...

  2. UIView 的属性opaque详解

    该属性用法决定与该消息的接受者是否让其视图透明. 该属性的用处在于:给绘图系统提供一个性能优化开关. 当该值设计为YES,那么绘图系统会把它当作不透明看待,那么在执行绘图的时候会优化绘图一些操作,并且 ...

  3. JS:操作样式表3:内联和外链样式

    var box = document.getElementById("box"); box.style.属性;只能读取修改行内样式. //访问元素样式2,对外链样式表进行操作 do ...

  4. codeforces 349B Color the Fence 贪心,思维

    1.codeforces 349B    Color the Fence 2.链接:http://codeforces.com/problemset/problem/349/B 3.总结: 刷栅栏.1 ...

  5. lua语法备忘录

    1.三元表达式 a?b:c => a and b or c 2.循环数组 local keys = args.kvs:get_keys() local arr = xstring.split(k ...

  6. IE6、7绝对定位层被遮挡的原因(主要是父层决定的)

    最近做项目,经常遇到IE7以下浏览器中.一些悬浮框被一些元素遮挡的问题,这些元素一般都是设置了position的.问题的根本在不是被设置绝对定位的元素上,而是在设置了相对定位的父元素上.   我查阅了 ...

  7. 分模块创建maven项目(一)

    maven是一个项目构建和管理的工具. 我们可以通过maven仓库可以实现管理构建(主要是JAR还包括:WAR,ZIP,POM等等). 我们可以通过maven插件可以实现编译源代.产生Javadoc文 ...

  8. nginx资源定向 css js路径问题

    今天玩玩项目,学学nginx发现还不错,速度还可以,但是CSS JS确无法使用,原来Iginx配置时需要对不同类型的文件配置规则,真是很郁闷,不过想想也还是很有道理.闲暇之际,把配置贴上来.#user ...

  9. CAS单点登录配置

    见http://download.csdn.net/detail/u010786672/6942715下载.

  10. Hadoop.2.x_高级应用_二次排序及MapReduce端join

    一.对于二次排序案例部分理解 1. 分析需求(首先对第一个字段排序,然后在对第二个字段排序) 杂乱的原始数据 排序完成的数据 a,1 a,1 b,1 a,2 a,2 [排序] a,100 b,6 == ...