草庐IT

分支语句和循环语句

全部标签

javascript - 在 JavaScript 中循环直到满足条件

我正在尝试无限循环直到满足条件...以下是否正确?好像不是。varset=false;while(set!==true){varcheck=searchArray(checkResult,number);if(check===false){grid.push(number);set=true;}} 最佳答案 基本上,您可以使用此模式进行无限循环,并使用语句break在循环中的任何位置添加中断条件。:while(true){//...if(breakCondition){break;}}

javascript - 在循环 Angular2 中创建多个元素

编辑:关于可能的答案:我也遇到了那个问题/答案并以这种方式实现了它。但是,对于新版本的Angular2,语法有所不同。关于ngFor的文档没有更新(这是我看的地方)。所以我写错了代码。关于ngFor的文档已在TemplateSyntax-ngFor中更新.Günter写了一个关于如何在较新版本的Angular2(beta17或更高版本)中使用它的正确示例。我想在循环中创建多个元素。这就是我现在拥有的:IDName{{item['id']}}{{item['name']}}我想要的是tr下的另一个tr和details。所需的输出在浏览器中应如下所示:IDName1Item12Item2我

javascript - 循环遍历 JavaScript 对象的其他方法?

下面的代码运行良好,但ESLint插件显示警告:“不允许使用‘ForinStatement’”,所以我想将其更改为其他方式以防止出现警告消息:letcount=0;for(constkeyingroups){if(Object.prototype.toString.call(groups[key])==='[objectObject]'){if({}.hasOwnProperty.call(groups[key],'users')){count+=groups[key].users.length;}}} 最佳答案 如果您的目标只是避

javascript - 如何减少多个 if 语句的代码

我正在尝试验证一个大型联系表单。当用户忘记必填输入字段时,我会用默认文本填充空变量。我目前的解决方案使用九个if声明。有没有更好的方法来使用更少的代码?html:varonoma=$("#fname").val();vareponimo=$("#lname").val();varemail=$("#email").val();vardiefthinsi=$("#address").val();varpoli=$("#city").val();varxora=$("#country").val();varkatigoriaDiafimisis=$("#AdCategory").val()

javascript - 在具有循环依赖的大对象上调用 JSON.stringify 时出现 "too much recursion"错误

我有一个包含循环引用的对象,我想查看它的JSON表示形式。例如,如果我构建这个对象:varmyObject={member:{}};myObject.member.child={};myObject.member.child.parent=myObject.member;并尝试调用JSON.stringify(myObject);我收到“太多递归”错误,这并不奇怪。“子”对象引用了它的“父对象”,父对象引用了它的子对象。JSON表示不必非常准确,因为我只是将它用于调试,而不是将数据发送到服务器或将对象序列化为文件或类似的东西。有没有办法告诉JSON.stringify忽略某些属性(在本

javascript - jQuery core.js "+i"语句,错误还是技巧?

在jQuerycore.js中,currently,line260this.slice(i,+i+1);“+i”语句是错误的还是我找不到任何提及的花哨的诡计? 最佳答案 这是将i转换为数字的快速方法。这很重要,因为+如果它是一个字符串,则意味着不同的东西,如果它是一个数字。例如:vari="1";console.log(i+1);//"11"console.log(+i+1);//2它基本上是parseInt(i,10)的快捷方式。 关于javascript-jQuerycore.js"

比较语句的 Javascript 缩小

我正在查看由闭包生成的缩小的js文件之一。我发现无论我在哪里检查变量和字符串之间的相等性,例如,a=="13"||a=="40"闭包将其替换为"13"==a||"40"==a为什么要做这个修改?这里有一些性能优势吗? 最佳答案 这样做是为了获得较小的gzip压缩优势。如果你有“x==1”和“1==x”,编译器在这两种情况下都会将其切换为“1==x”,你会得到更多压缩得更好的常规代码。胜利是如此之小,以至于我考虑过删除代码并节省cpu周期,但现在是这样。它与防止程序员错误无关,因为它永远不会将“x=2”切换为“2=x”,因为这会改变程

javascript - 根据两个条件退出 While 循环

我对这篇文章的答案有疑问JavascriptcodetoparseCSVdata我发现在末尾有一个额外的"\r\n",我不想将其添加到数组中。我试图打破while循环...原来的工作线是while(arrMatches=objPattern.exec(strData)){但如果arrMatches="\r\n"我需要打断while((arrMatches[1]!="\\r\\n")&&arrMatches=objPattern.exec(strData)){但出现Invalidleft-handsideinassignment错误。正确的语法是什么? 最佳答

JavaScript 循环遍历所有带有标记名、警报的元素

varall=document.getElementsByTagName("a");for(vari=0,max=all.length;i这个脚本的目的很明显:它试图循环遍历所有带有标签名称a的元素,并提醒每个元素的内容。运行不正常。它工作正常,有一个元素时,它会提醒它的内容,但是当有多个元素时,它开始为每个元素回显undefined。 最佳答案 您还没有为x提供定义。试试这个:varall=document.getElementsByTagName("a");for(vari=0,max=all.length;i

javascript - 循环 html2canvas

我在尝试在for循环中实现html2canvas脚本时遇到了一些麻烦。我正在编写一个Javascript函数,它使用数据数组来修改一组元素的样式,将容器div捕获为Canvas,将其转换为图像,将其附加到文档主体,然后继续到数组的下一个索引。我遇到麻烦的部分是在循环的最后:html2canvas(document.getElementById("background"),{onrendered:function(canvas){varimgdata=canvas.toDataURL("image/png");varobj=document.createElement("img");ob