jq数组,得到遍历生成的id后面的id
//商品选择完成跳转到提交订单页面
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的更多相关文章
- EL语法 ${person.id} 这里面的id指的是实例对象的成员变量
EL语法 ${person.id} 这里面的id指的是实例对象的成员变量
- Mybatis如何在插入(ID是后台生成的)后返回ID?
获得ID方法:
- 数据库分表分区后的ID生成之雪花生成
转自https://www.cnblogs.com/jajian/p/11101213.html 传统的单体架构的时候,我们基本是单库然后业务单表的结构.每个业务表的ID一般我们都是从1增,通过AUT ...
- phpcms v9二级栏目生成到根目录后三级栏目无法访问的解决办法
这个栏目问题折腾了我一天多,可怜我这个美工又不会程序!!! 我的问题是: 我的栏目设置如下: 一级栏目[生成到根目录(是)]> 二级栏目[生成到根目录(是)] > 三级栏目[生成到根目录( ...
- JavaScript中的数组对象遍历、读写、排序等操作
以百度前端技术学院的js任务三为例,复习一下关于js数组的几个点 题目 <!DOCTYPE> <html> <head> <meta charset=&quo ...
- 常用jq选择器和遍历的使用
1.jq的选择器,常用有哪些? class id > ~ ul li a 2.遍历的使用(在使用用遍历节点时,我们的注意遍历在不传递参数(也就是传参),代表的是传递局部全局,也就是"* ...
- javascript(基础)_对数组的遍历方法总结(find, findIndex, forEach,)
一.前言 ...
- jQuery生成一个DIV容器,ID是"rating".
我们需要一些服务器端代码,这个例子中用到了一个PHP文件,读取rating参数然后返回rating总数和平均数.看一下rate.php代码.虽然这些例子也可以不使用AJAX来实现,但显示我们不会那么做 ...
- JavaScript中数组中遍历的方法
前言 最近看了好几篇总结数组中遍历方法的文章,然而"纸上得来终觉浅",决定此事自己干.于是小小总结,算是自己练手了. 各种数组遍历方法 数组中常用的遍历方法有四种,分别是: for ...
随机推荐
- 移动端开发——javascript
javascript(简称js)语言在移动前端应用很广.可以说必不可少,许多效果都是和js相关的.包括现在移动端的一些框架.jqmobi.jqtouch.sencha touch.jquerymobi ...
- android-ContentProvider
一.理解ContentProvider 为了在应用程序之间交换数据,Android提供了ContentProvider,它是不同应用程序之间进行数据交换的标准API,当一个应用程序需要把自己的数据暴露 ...
- css3 半个字符美化方法
<html lang="zh-CN"> <head> <title></title> <meta charset=" ...
- jq最新前三篇文章高亮显示
/*---------最新前三篇文章高亮显示-------------*/ function latest(){ var color_arr=new Array( "blue", ...
- UVA12532 线段树(单点更新,区间求乘积的正负)
It’s normal to feel worried and tense the day before a programming contest. To relax, you went out f ...
- 使用dbms_crypto包加密关键列数据
对于业务系统中常见的需要加密的列我们可以在应用层来实现,也可以在数据库层实现,自己验证了一下使用dbms_crypto包来封装函数实现关键列的加密. 1.数据库版本 SQL> select * ...
- 求最大连续bit数
描述 功能: 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1 输入: 一个byte型的数字 输出: 无 返回: 对应的二进制数 ...
- php数组序列化serialize与unserialize
$arr=array('1','2','3');echo serialize($arr); //序列化 a:3:{i:0;s:1:"1";i:1;s:1:"2" ...
- 温故而知新 OOP
设计原则1: 找出应用中可能需要发生改变的地方,把它们独立出来,不要和那些不需要变化的代码混在一起换句话说,如果每次新的需求一来,都会使某方面的代码发生变化,此时你就可以确定,这部分代码属于不稳定代码 ...
- Gruntfile.js
module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), clea ...