循环中冲不掉外部定义的变量
2017-04-26 17:26
204 查看
不管用each, 还是for, 即便是闭包, 也有这个作用于的问题
就是人们常常问的, 为什么总是留在最后一个值?
此处是另一种情况.
如果把obj定义在外面, 内部将它push或者赋值到数组中去, 永远都只能存入最后一个obj.
就是人们常常问的, 为什么总是留在最后一个值?
此处是另一种情况.
如果把obj定义在外面, 内部将它push或者赋值到数组中去, 永远都只能存入最后一个obj.
var items = data[0].result.value; var list = $(".js-account-order-list"); var order = list.find(".order"); var arr = []; $page.currentList = []; console.log("[account-order] userTransactionsorders got items ::::", items); $.each(items, function (index) { //list var obj = {}; obj.detail = []; obj.time = items[index].TRANS_DATE; obj.id = items[index].TRANS_ID; obj.status = items[index].ORDER_STATUS_STRING; obj.link = items[index].TRACKING_LINK; obj.ship_no = items[index].TRACKING_NUMBER; obj.carrier = items[index].CARRIER; order.eq(index).attr("data-id", obj.id); order.eq(index).find(".js-date").text(obj.time); order.eq(index).find(".js-order_no").text(obj.id); order.eq(index).find(".status").text(obj.status); order.eq(index).find(".activity a").attr("href", obj.link); (obj.detail).push($page.getDetail(obj.id, index)); console.log("[account-order] obj for save::::", obj); arr[index] = obj; console.log("[account-order] arr saved::::", arr); });
相关文章推荐
- C++ primer学习1:细节:标准化后C++中,定义在for循环内部的变量,循环外部不可使用
- static(c中定义的关键字1、被其修饰者 外部无法使用(相反的都可以使用extern在外部使用) 2、函数局部变量使用成为静态的放入静态池-生存期改变。c++进行了扩充,使它在类中有了特殊作用)
- 变量声明到底在循环外部好还是在循环内部好?
- MSSQL 定义变量及条件语句,循环语句,全局变量的使用
- VC++学习笔记(9)——在VC中定义外部变量
- C 语言的循环控制变量定义和初始化问题
- Smarty模板的2种循环方式及Smarty中变量定义
- C++在循环内和循环外定义变量的差异
- Shell编程中使用管道循环中无法改变外部变量的解决办法
- ECSHOP Foreach循环中定义变量 根据遍历进行判断(小技巧)
- 定义一个整数N,不用本地变量和循环,输入N,依次判断2N,4N,8N...,一旦大于5000,则倒序输出小于5000的那些数(...,8N,4N,2N,N)
- C++循环变量定义生命周期
- THinkPHP在模板中的volist循环使用外部变量注意事项
- C++在循环内和循环外定义变量的差异(如何写出高效的for循环)
- 【Javascript】: for循环中定义的变量在for循环体外也有效
- Linux shell - while 循环对外部变量的处理
- 关于For循环中定义的变量在循环外的引用
- for循环里定义变量要注意
- 代码块内定义的变量外部可见
- 使用extern声明外部定义的变量时不能赋值,只需声明变量