js变量污染引起的诡异bug
js方法是这样的:
//保存提货券JSON数据到隐藏字段
saveVoucherListInfoToHiddenFiled: function () {
//保存绑定商品信息
var voucherLines = $("#tbVouchersBindCommodityList .cClz");
var voucherModels = [];
for (var i = 0; i < voucherLines.length; i++) {
var $voucher = $(voucherLines[i]);
var model = $voucher.data("voucher");
model.BindCommodities = $voucher.data("bindcommodities");
////设置提货券的类型
//model.BindType = model.BindCommodities.length ? model.BindCommodities[0].BindType : "COMMODITY"; voucherModels.push(model);
}
$("#" + addVoucherModule.data.voucherListID).val(JSON.stringify(voucherModels)); //绑定促销信息
var voucherPromotionLines = $("#tbVouchersBindCommodityList .pClz");
var voucherPromotionModels = [];
for (var i = 0; i < voucherPromotionLines.length; i++) {
var $voucherPromotion = $(voucherPromotionLines[i]);
var modelPromotion = $voucherPromotion.data("voucher");
modelPromotion.BindCommodities = $voucherPromotion.data("bindcommodities");
voucherPromotionModels.push(modelPromotion);
}
$("#" + addVoucherModule.data.voucherPromotionListID).val(JSON.stringify(voucherPromotionModels));
},
结果在
var modelPromotion = $voucherPromotion.data("voucher");取到的值总是有一条与上一条一样的记录,最后将第二个i改成j才完事儿。。。。回头好好总结下
js变量污染引起的诡异bug的更多相关文章
- 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作
页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...
- Safari 下用 "location.href = filePath" 实现下载功能的诡异 bug
Safari 下的一些诡异 bug 我们已经领教一二,比如前文中说的 无痕浏览模式下使用 localStorage 的 API 就会报错.今天我们要讲的是利用 location.href = file ...
- 原型模式故事链(5)--JS变量作用域、作用域链、闭包
上一章 JS执行上下文.变量提升.函数声明 传送门:https://segmentfault.com/a/11... 本次我们主要讲讲变量作用域和闭包变量作用域:顾名思义:变量起作用的范围.变量分为全 ...
- js变量及其作用域(附例子及讲解)
Javascript和Java.C这些语言不同,它是一种无类型.弱检测的语言.它对变量的定义并不需要声明变量类型,我们只要通过赋值的形式,可以将各种类型的数据赋值给同一个变量 工具/原料 Ch ...
- javascirpt对象运用与JS变量
abcdefghijklmnopqrstuvwyz String 对象方法 charAt() 方法可返回指定位置的字符.stringObject.charAt(index)(index从0开始)[ht ...
- js变量及其作用域
Javascript和Java.C这些语言不同,它是一种无类型.弱检测的语言.它对变量的定义并不需要声明变量类型,我们只要通过赋值的形式,可以将各种类型的数据赋值给同一个变量 一.js变量的类型及 ...
- JS变量和函数的一些理解
今日看了下JS变量的一些文章,有些感触,把自己总结的一些写出来. JS初始化的过程1.JS解释器执行代码之前,创建全局变量2.用预定义的值和函数来初始化全局对象中的属性,3.搜索函数外的var声明,创 ...
- js变量在属性里的写法 常用mark 多个DL遍历添加一个父级DIV
标记用 js变量比如url链接一般都是a里面的href属性值 在js里单引号链接 以后再忘记就能有地方找了 例子: /* 添加1200 居中div 包裹 获取元素集合 上层元素100% * @ele ...
- js 变量提升+方法提升
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
随机推荐
- bzoj 3669: [Noi2014]魔法森林 (LCT)
链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3669 题面: 3669: [Noi2014]魔法森林 Time Limit: 30 Sec ...
- Codeforces 1108F MST Unification(最小生成树性质)
题目链接:MST Unification 题意:给定一张连通的无向带权图.存在给边权加一的操作,求最少操作数,使得最小生成树唯一. 题解:最小生成树在算法导论中有这个性质: 把一个连通无向图的生成树边 ...
- x86汇编语言实践(3)
0 写在前面 为了更深入的了解程序的实现原理,近期我学习了IBM-PC相关原理,并手工编写了一些x86汇编程序. 在2017年的计算机组成原理中,曾对MIPS体系结构及其汇编语言有过一定的了解,考虑到 ...
- P1962 斐波那契数列-题解(矩阵乘法扩展)
https://www.luogu.org/problemnew/show/P1962(题目传送) n的范围很大,显然用普通O(N)的递推求F(n)铁定超时了.这里介绍一种用矩阵快速幂实现的解法: 首 ...
- 第五周博客作业<西北师范大学|李晓婷>
1.助教博客链接:https://home.cnblogs.com/u/lxt-/ 2.作业要求链接:https://www.cnblogs.com/nwnu-daizh/p/10527959.htm ...
- App测试的策略
(一).App测试的策略 1.App测试需要考虑的方面 设备多样性 操作系统.浏览器.应用程序运行时环境.屏幕分辨率.人机交互界面和接口.人体工程学设计.屏幕尺寸等 运营商网络 ...
- 图片下载、渲染操作 小例子 看多FutureTask
并发执行下载图片操作 import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent. ...
- python接收axios的post请求,并处理后返回数据
公司的python工程师不会js和python数据交互,所以我就去试了一下. 首先安装python,django框架和django-cors-headers. python官网下载,按提示操作,记住最 ...
- python函数的闭包
---恢复内容开始--- python允许有内部函数,也就是说可以在函数内部再定义一个函数,这就会产生变量的访问问题,类似与java的内部类,在java里内部类可以直接访问外部类的成员变量和方法,不管 ...
- webpack的按需引入配置
ant.design插件需要less配合,yarn add babel-plugin-import,webpack4.0的babel文件已经配置到webpackconfig.js中,需要eject暴露 ...