河北福彩排列五走势图> 信息中心 >

福利彩票排列7开奖结果:2018-7-11_《Javascript代码的小小疑问》

来源:互联网 编辑:张晓华

河北福彩排列五走势图 www.rkvgp.cn 有网友碰到过这样的问题:2018-7-11_《Javascript代码的小小疑问》,问题详细内容为: function fn(num){ let _keyArr = ['A','B','C','D','K','Y']; let _valArr = num.toString().split(''); let _obj = {}; for(let i = 0,l = _keyArr.length; i<l;i++){ //console.log(_keyArr[i]); for(let j = 0, l = _valArr.length; j<l;j++){ //console.log(_valArr[j]); _obj[_keyArr[i]] = _valArr[j]; } } console.log(_obj); }; fn(532694);//为何值都是 “4”??

 

 

Javascript 遍历 ,我搜你通过互联网收集了相关的一些解决方案,希望对有过相同或者相似问题的网友提供帮助,具体如下:

解决方案1:
一次循环就行,第二个循环里,因为尾数是4,4总会覆盖之前的值,想要一一对应有两者做法: 1.只用一个循环 function fn(num){ let _keyArr = ['A','B','C','D','K','Y']; let _valArr = num.toString().split(''); let _obj = {}; for(let i = 0,l = _keyArr.length; i<l;i++){ _obj[_keyArr[i]] = _valArr[i]; } console.log(_obj); }; fn(532694); 2.第二个循环里判断一下索引是否一对一 function fn(num){ let _keyArr = ['A','B','C','D','K','Y']; let _valArr = num.toString().split(''); let _obj = {}; for(let i = 0,l = _keyArr.length; i<l;i++){ //console.log(_keyArr[i]); for(let j = 0, l = _valArr.length; j<l;j++){ if(i==j){ _obj[_keyArr[i]] = _valArr[j]; } } } console.log(_obj); }; fn(532694); 其实一次就可以了,之所以给出第二个方法是想表达只有在索引是一对一的情况下才是你想要的结果,如果没有 i==j,那么在第二个循环里最后的4始终会覆盖前面的值,这就是为什么值都是4的原因。加个判断,或者,就用一个循环,索引都是i 即可。 收获园豆:5
============================================
我还是倾向方法二,因为复合我的思考,别的不管,分给你了。。
解决方案2:
你这边为啥有2次循环  _obj[_keyArr[i]]这个第一层循环都是不一样的所以不会覆盖    但是_valArr[j]每次第二层循环完都是数组最后一位。   因为这是2层循环  6*6 次 
解决方案3:
第一个for循环,循环的是字母,第二个for循环的是数字;过程是先循环字母A,然后循环数字给A值,每循环一次数字给A重新赋一次值,从5循环到4,所以A最后的值是4,循环完A,再循环B,同样的道理,B最后的数字是也是4    所以都循环完,所有字母后跟的都是4

关于javascript代码的小问题!!!

如果 document.getElementById 对象存在 则执行 DOMCapable = true 否则执行 DOMCapable = false

伪装url怎么引入javascript代码

/> <script type="text/javascript"> var Js_Cs= document.getElementById("Cs"); Js_Cs.readOnly=true; </script>PS:此时JavaScript代码要写到&...

从浏览器的JavaScript代码FireMonkey回调问题,怎么解决

展开全部 1.首先点击打开浏览器的菜单【工具】,然后选择【选项】-【internet选项】;如果是IE用户,可以直接在IE图标上点击右键,选择属性进入。 2.打开Internet选项设置窗口...

myeclipse jsp和javascript代码提示的问题

是在写java类时的提示吧?jsp的提示有时候由于系统问题不会出现,js的提示应该是没有的

关于JavaScript代码加密的疑问

加密没有用,都能解开。 而且外部调用的js文件也会被IE下载到本地的,你的源文件肯定是能被找到的。因为IE要解析,再怎么加密,也是能被还原的。 其实没有必要加密,如果你觉...

我想知道我这段JAVAscript代码有什么问题,求指教

var number = new Date().getSeconds() % 3 + 1;//随机数,从1到3 document.write('<link href="0' + number.toString() + '/0' + number.toString() + '.css" rel="style...

这段JavaScript代码有什么问题,为什么提示"Uncaught SyntaxE...

// 这里new用单引号括起来,下面action也一样onmouseover="changeDiv('new')" javascript,代码\uncaught,syntaxerror,token // 这里new用单引号括起来,下面action也一样...

这段JavaScript代码有什么问题,求解答 --->发现在点击其他连接...

要这段代码报错也应该是拖动滚动条才会报错,想得到最好的答案希望把问题描述清楚点,最好把错误代码贴上,以及你想要的结果是什么! 如果其他地方报错,而你的这个js又是通...

关于jsp里面java代码和javascript代码的一个问题

不能混用的。 java代码和javascript代码 就不是一种语言的。


请注意,本站信息均收集自互联网,相关信息仅供参考,医疗等重要信息请以正规途径为最终意见,本站不承担任何责任!

河北福彩排列五走势图 www.rkvgp.cn false 互联网 //www.rkvgp.cn/blogcnk/mv/clijgd.html report 3477 解决方案1:一次循环就行,第二个循环里,因为尾数是4,4总会覆盖之前的值,想要一一对应有两者做法:1.只用一个循环function fn(num){ let _keyArr = ['A','B','C','D','K','Y']; let _valArr = num.toString().split(''); let _obj = {};for(let i = 0,l = _keyArr.length; i<l;i++){_obj[_keyArr[i]] = _valArr[i

    热门图片

  • “蛟龙” 吸引世界目光(砥砺奋进的五年·重大工程巡礼) 2019-03-25
  • 注意了!报考这个专业须先参加面试 2019-03-24
  • 金华:舞动世界杯 我是颠球王 2019-03-24
  • 第六届哈尔滨国际油画展开幕 2019-03-23
  • 张北元中都国家考古遗址公园挂牌 2019-03-22
  • 铁打的国足,流水的“大爷” 2019-03-22
  • 不只广东有爱情故事,新疆也有,还刷爆抖音! 2019-03-21
  • 哪个不在痛打落水狗呢 2019-03-21
  • 景区发展需遵循市场原则 2019-03-20
  • 丁霞、颜妮入选国家队 靠勤奋与担当 2019-03-19
  • 王晓光:新时代的企业社会责任管理必须进行创新升级 2019-03-19
  • 21岁CEO为留学生做“安保” 2019-03-18
  • 去这6个城市旅游 飞机高铁随便选 2019-03-17
  • 个税法迎第七次大修 起征点调至每年6万元 2019-03-16
  • 我的春晚我的年 央视春晚走过35载 2019-03-15
  • 988| 838| 933| 275| 176| 822| 600| 160| 948| 777|