草庐IT

for-in-loop

全部标签

javascript - 清洁代码 : try/catch in Promise

我正在研究redux-formatm并找到了这段代码。它对我有用,但有没有更简洁的方法来用ES6风格编写它?constasyncValidate=(values/*,dispatch*/)=>{returnnewPromise((resolve,reject)=>{try{if(['john','paul','george','ringo'].includes(values.name)){consterror={name:'Thatusernameistaken'};throwerror;}resolve();}catch(e){reject(e);}});};非常感谢你的帮助解决方案

javascript - 强制缓存控制 : no-cache in Chrome via XMLHttpRequest on F5 reload

我想确保我通过AJAX调用请求的数据是最新的并且没有被缓存。因此,我发送headerCache-Control:no-cache但如果用户按F5,我的Chrome版本33会使用Cache-Control:max-age=0覆盖此header。例子。将包含内容的test.html放在您的网络服务器上varxhr=newXMLHttpRequest;xhr.open('GET','test.html');xhr.setRequestHeader('Cache-Control','no-cache');xhr.send();在网络选项卡上的chrome调试器中,我看到了test.htmlAJ

javascript - i++ 与 JavaScript for 循环中的++i

因为JSLint,我几乎总是使用i+=1来递增JavaScriptfor循环,但对于快速和肮脏的脚本,我使用i++代替。但是,我在其他人的代码中看到了很多for循环,他们通过执行++i来增加i。据我所知,i++和++i在含义上没有区别,jsPref在性能上也没有区别。因此,我想知道执行++i的约定从何而来,以及为什么人们倾向于这样做。有谁知道为什么在for循环中递增计数器时,很多JS编码人员倾向于选择++i而不是i++?谢谢。 最佳答案 区别在于i++返回i递增前的值,++i返回i的值>递增后。如果您忽略返回值,则没有区别,例如在:

Javascript:使用for循环将数组插入数组

请给我解释一下。我正在尝试使用for循环创建一个数组数组。当它不起作用时,我尝试简化代码以了解Javascript在做什么,但简单的代码也没有意义。functiontest(){varsub_array=[];varsuper_array=[];for(vari=1;i我希望看到[1;1,2;1,2,3]。相反,我得到[1,2,3;1,2,3;1,2,3]。如果我循环0-2并按索引分配,我会得到同样的现象。 最佳答案 您总是将对同一数组的引用推送到您的super数组中。要解决该问题,您可以使用slice()在推送之前克隆子数组:fu

javascript - JavaScript : How to get resolve value for all promises? 中的 Promise.all

我编写了以下node.js文件:varcsv=require('csv-parser');varfs=require('fs')varPromise=require('bluebird');varfilename="devices.csv";vardevices;Promise.all(read_csv_file("devices.csv"),read_csv_file("bugs.csv")).then(function(result){console.log(result);});functionread_csv_file(filename){returnnewPromise(fu

javascript - Javascript : while or for statements? 什么更有效率

我最近有机会在javascript中做循环,我很困惑是使用for循环还是while语句。vari=foo.length;while(i--){}或for(vari=0;i我想从javascript专家那里知道哪一个使用起来更有效,以及我们应该在什么情况下相应地使用它们。是与Java中的原因相同还是有所不同。 最佳答案 从理论上讲,while循环更快,因为for循环每次都会查找foo的length属性时间虽然循环,但在现实世界中使用它会产生不可估量的小差异。 关于javascript-Ja

javascript - val.replace(/[^a-zA-Z_-0-9]/g, '' ) 产生 SyntaxError : invalid range in character class

我需要替换所有与a-zA-Z_-0-9范围不匹配的字符。所以我做了val.replace(/[^a-zA-Z_-0-9]/g,'')但得到了错误。我怎么能咬这个?谢谢 最佳答案 如果要在字符类中包含减号“-”,则必须将其放在范围末尾:val.replace(/[^a-zA-Z_0-9-]/g,'') 关于javascript-val.replace(/[^a-zA-Z_-0-9]/g,'')产生SyntaxError:invalidrangeincharacterclass,我们在Sta

Javascript 和正则表达式 : remove space after the last word in a string

我有一个这样的字符串:varstr='aaaaaa,bbbbbb,ccccc,ddddddd,eeeeee';我的目标是删除字符串中的最后一个空格。我会用,str.split(0,1);但是如果字符串中最后一个字符后没有空格,这将删除字符串的最后一个字符。我想用str.replace("regex",'');我是RegEx的初学者,感谢任何帮助。非常感谢。 最佳答案 在谷歌上搜索“javascripttrim”,您会发现许多不同的解决方案。这是一个简单的例子:trimmedstr=str.replace(/\s+$/,'');

javascript - 在for循环javascript中添加数字

我需要用javascript对for循环中的所有数字求和varnums=['100','300','400','60','40'];for(vari=1;i有人可以帮忙吗http://jsfiddle.net/GYpd2/1/我要找的结果是900 最佳答案 varnums=['100','300','400','60','40'];varsum=0;for(vari=0;i测试:http://jsfiddle.net/GYpd2/6/(感谢user1503606)如果nums只包含数字,则不需要parseInt()。

【MYSQL8 已解决】Access denied for user ‘root‘@‘localhost‘ (using password: YES)问题

【Accessdeniedforuser‘root’@‘localhost’(usingpassword:YES)】**好像每次关机重启mysql8,用navicat连接本地mysql8都会出现这个问题,可我的密码也没错呀。于是我是这么解决的:1.首先关掉mysql命令可以使用netstopmysql也可以通过服务列表手动关闭2.打开管理员cmd命令窗口据我了解mysql8之前的是在my.ini文件中【mysqld】中加一句的mysql8的话是:在管理员打开的cmd进入到mysql的bin目录下输入mysqld--console--skip-grant-tables--shared-memor