Js操作Array数组
之前写过一篇文章,但是很模糊,不过却给我提供了一个思路,所以没有删除,这次写的是一个完善版本!
因为在很多的时候我们在选中了几行数据,然后存放在Array中,如下图:
看下控制台的数据
我双击了这两个项目
然后我们看看控制台的数据:
数量已经加1了,代码如下:
var _historyData = new Array();
function BindGoodsTab(goodsId, goodsName, goodsPrice) {
var _html = "";
var _data = {};
_data["id"] = parseInt(goodsId);
_data["GoodsName"] = goodsName;
_data["GoodsNum"] = 1;
_data["GoodsPrice"] = parseFloat(goodsPrice);
var _len = _historyData.length; var _Ishave = false;
var _flag = 0;
if (_historyData.length > 0) {
for (var i = 0; i < _len; i++) {
var _hGid = parseInt(_historyData[i]["id"]);
if (_data["id"] == _hGid) {
_flag = i;
_Ishave = true;
break;
}
}
console.log(_flag);
if (!_Ishave) {
_historyData.push(_data);
}
else {
_historyData[_flag]["GoodsNum"] = parseInt(_historyData[_flag]["GoodsNum"]) + 1;
}
}
else {
_historyData.push(_data);
}
console.log(_historyData);
$("#goodsList").html(_html);
}
删除某一个对象:如下图
控制台:
代码:
function DelLease(goodsId) {
for (var i = 0; i < _historyData.length; i++) {
if (goodsId == _historyData[i]["id"]) {
_historyData.splice(i, 1);
}
}
CreateLeaseTab(_historyData);
}
function CreateLeaseTab(_historyData) {
var _html = "";
var _totalMoney = 0;
for (var i = 0; i < _historyData.length; i++) {
_html += "<tr style='border-top:1px solid #ccc;'>";
_html += "<td style='width:160px;padding:7px 0px;'>" + _historyData[i]["GoodsName"] + "</td>";
_html += "<td style='width:60px;'>" + _historyData[i]["GoodsNum"] + "</td>";
_html += "<td style='width:100px;'>" + _historyData[i]["GoodsPrice"].toFixed(2) + "</td>";
_html += "<td style='width:100px;'>" + _historyData[i]["GoodsTotalPrice"].toFixed(2) + "</td>";
_html += "<td style='width:100px;'><img src='../images/Gift/del.png' onclick='DelLease(" + _historyData[i]["id"] + ")' /></td>";
_totalMoney += parseFloat(_historyData[i]["GoodsTotalPrice"].toFixed(2));
}
$("#goodsList").html(_html);
$("#totalMoney").html(_totalMoney.toFixed(2));
console.log(_historyData);
}
Js操作Array数组的更多相关文章
- JS中Array数组的三大属性用法
原文:JS中Array数组的三大属性用法 Array数组主要有3大属性,它们分别是length属性.prototype属性和constructor属性. JS操作Array数组的方法及属性 本文总结了 ...
- 多动手试试,其实List类型的变量在页面上取到的值可以直接赋值给一个js的Array数组变量
多动手试试,其实List类型的变量在页面上取到的值可以直接赋值给一个js的Array数组变量,并且数组变量可以直接取到每一个元素var array1 = '<%=yearList =>'; ...
- js中Array数组基本方法
总结:push() 添加元素到数组未尾, 返回数组长度 unshift() 添加元素到数组头部, 返回数组长度 pop() 删除数组未尾元素, 返回删除元素 shift() 删除数组头部元素, 返回删 ...
- js中Array数组的属性和方法
这是我自己整理出来的一些关于Array数组的属性和方法,即查即用. 1.Array.length属性:数组的项数组,始终返回0或者更大的值. 2.instanceof操作符:value instanc ...
- JS对象 Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置,是从零开始的
Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的.数组的每一个成员对象都有一个"下标",用来表示它在数组中的位置,是从零开始的 数组定义的方法: 1. 定 ...
- JS判断Array数组中是否包含指定元素
1.调用方式: var arr=["a","b"]; alert(arr.in_array("a")) 2.JS判断数组是否包含指定元素方法 ...
- Js中Array数组学习总结
第一次写博客...有点方... 小白一枚(是真的小白),自学前端,下面来说说我在学习过程中总结的一些数组操作,如果说哪有错误,请各位大神多多指出,小的虚心接受. 引用类型分为Object类型(所谓的对 ...
- js清空array数组的方法
方式1,splice Js代码 ,,,}; ary.length = ; Java中会报错,编译通不过. 而JS中则可以,且将数组清空了,如 Js代码 var ary = [1,2,3,4]; ...
- js删除Array数组中的某个元素
Array.prototype.indexOf = function (val) { ; i < this.length; i++) { if (this[i] == val) return i ...
随机推荐
- Session 快速开始 通过session的attribute通信
[web.xml] <session-config> <session-timeout>30</session-timeout> <cookie-config ...
- 【codeforces 870F】Paths
Description You are given a positive integer n. Let's build a graph on vertices 1, 2, ..., n in such ...
- MySQL相关信息之数据库操作(三)
1.创建数据库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] DB_NAME [DEFAULT] CHARACTER SET [=] charset ...
- UIScrollView嵌套的完美解决方案
UIScrollView嵌套的完美解决方案 做iOS开发,不可避免的会遇到UIScrollView的嵌套问题,之前也曾遇到过,吭哧吭哧做完了,效果不理想,和产品大战好几回合,就那样了.不可避免的,又一 ...
- MongoDB初探-基本语句和数据结构
MySQL: 1 金老板 18 15512351234 2 小哪吒 20 15312341234 3 Alex 73 15512341234 MongoDB: { { id : 1, name:金老板 ...
- 5.28 js基础 简介
Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) JavaScript历史背景介绍 布 ...
- jstl-----之<set>标签
<table id="attachtab" border="0" cellpadding="0" cellspacing=" ...
- mysql查询反斜杠字符串问题
马上上线发现一个问题,太坑了 写一个查询语句,明明数据库中有,但是就是查不到,后来发现是反斜杠的问题 比如 数据库中有一个字段名称为 name 存储的值为 “海尔厨电\洗碗机” 当我使用如下sql查 ...
- 329 experience
截止到现在,给我最大的冲击就是HTML没有像JAVA那样严格 可以随意搭配,换句话说 HTML要的就是效果 没有一个固定的方法 即便是代码有错误 也可以实现效果 今天的东西挺好吃 能吃的消 哈哈 开森 ...
- SpringBoot+BootStrap多文件上传到本地
1.application.yml文件配置 # 文件大小 MB必须大写 # maxFileSize 是单个文件大小 # maxRequestSize是设置总上传的数据大小 spring: servle ...