草庐IT

For-Each

全部标签

javascript - 如何将 jQuery each() 变成常规的 javascript 循环

几个问题:常规javascript循环(循环遍历一系列元素)是否比使用jQueryeach()更快/更有效??如果是这样,将以下代码编写为常规javascript循环的最佳方法是什么?$('div').each(function(){//...}) 最佳答案 是的,删除each()会给你带来更好的性能。这就是为元素列表编写for循环的方法。vardivs=$('div');for(vari=0;i 关于javascript-如何将jQueryeach()变成常规的javascript循环

javascript - Chrome 扩展 : Grab DOM content for parsing

我正在开发一个Chrome扩展程序,它只扫描DOM中的短语。我唯一需要帮助的是用弹出窗口抓取DOM内容,我找不到返回当前选项卡内容的方法。 最佳答案 测试并正常工作:放"permissions":["tabs"],在您的list中。然后,在你的background.js中chrome.extension.onRequest.addListener(function(request,sender,sendResponse){//LOGTHECONTENTSHEREconsole.log(request.content);});chro

javascript - 为什么不建议将 JavaScript 的 For...In 循环用于数组?

这个问题在这里已经有了答案:Whyisusing"for...in"forarrayiterationabadidea?(28个答案)关闭9年前。我在某处读到(抱歉,我找不到链接),不建议对数组使用For...In循环。这里说:http://www.openjs.com/articles/for_loop.php它适用于关联数组,并且在http://www.w3schools.com/js/js_loop_for_in.asp中那是为了遍历一个对象的所有属性(它并没有说它可以用在数组上)。我不知道该相信谁。我不希望这个问题成为一场辩论。我只想知道我是否可以在我的代码中使用它而不会产生不

javascript - JSHint 不允许我在 'forEach' 循环中使用 'for'

我有一个以数组作为值的对象。people={'steve':['foo','bar'],'joe':['baz','boo']}对于每个键,我想遍历相应数组中的值。足够简单:for(varpersoninpeople){person.forEach(function(item){console.log(item)})}但是JSHint提示:Don'tmakefunctionswithinaloop.这真的是我的代码有问题吗?我非常喜欢简短的ES5for循环语法。我是否需要使用ES3样式或以其他方式更改我的代码? 最佳答案 那里有两个

javascript - setTimeout 和 array each

我对使用setTimeout和each迭代器感到困惑。我如何重写以下内容,以便控制台在延迟5秒后输出每个名称?目前,下面的代码会在5秒后一次打印所有名称。我愿意:1)等待5秒,然后打印kevin2)等待5秒,然后打印mike3)等待5秒,然后打印sallyvarary=['kevin','mike','sally'];_(ary).each(function(person){setTimeout(function(){console.log(person);},5000);}); 最佳答案 您有三个基本选项:For循环+setTim

javascript - Angular JS 中的 `$.each()` 替代方案

AngularJS中jquery的$.each()循环的替代方案是什么。我在jquery中得到了以下内容(在我基于AngularJS的项目中):$($scope.tasks).each(function(index,task){if(task.isCompleted){task.showTask=true;}});而且我不想混合使用jquery和angular,因为他们说这样做是不好的做法(是吗?)。Angular有没有像$.each()这样的功能?还是我应该使用普通的javascript? 最佳答案 您可以使用angular.fo

javascript - 在 javascript 中正确使用 "for...in"循环?

在我提出问题之前,我想让每个人都知道,我很感激总有人愿意提供帮助这一事实,而在我这边,我会尽我所能回馈社区。谢谢现在,我想获得一些关于如何正确利用JavaScript中的“for...in”循环的指示,我已经做了一些研究并尝试了一些事情,但我仍然不清楚如何正确使用它。假设我在HTML表单中有随机数量的“选择”标签,我不要求用户为所有标签选择一个选项,如果他们愿意,他们可以保留一些不变。但是我需要知道他们是没有选择还是至少选择了一个。我试图找出用户是否选择了其中任何一个的方法是使用“for...in”循环。例如:varallSelected=$("selectoption:selecte

javascript - $getJSON 和 for 循环问题

这是用从MediaWikiAPI查询/api.php?action=query&list=querypage&qppage=BrokenRedirects返回的结果数量填充一个表。然后将结果数添加到id,例如://BrokenRedirects$.getJSON('/api.php?action=query&list=querypage&qppage=BrokenRedirects&format=json',function(data){$('#BrokenRedirects').text(data.query.querypage.results.length);});但由于它又被重复

javascript - jQuery.each 中的反转对象

HTML:JS:vardata=$.parseJSON($('#sdata').val());$.each(data,function(id,sc){alert(id);}输出:1640、1641、1642、...、1651如何使它倒序(例如1651、1650...)? 最佳答案 实际上,您不能以任何可靠的方式。因为您正在枚举一个对象,所以永远没有保证的顺序。如果你想要一个有保证的数字顺序,你需要使用一个数组,并向后迭代。编辑:这会将您的对象转换为数组,并进行反向迭代。请注意,它仅在所有属性都是数字时才有效。vardata=$.pa

javascript - jQuery 在 .each 循环中获取输入值

我试图在复选框的每个循环中获取输入值,我不知道如何让它工作,该值一直作为第一个复选框值输出。$('.custemb,input[name=cb],input[class=multadd]').live("click",function(){$('input[class=multadd]:checked').each(function(index){val=index+2;valu=$('input[class=multadd]:checked').val();multiz=multiz+'&aid'+val+'='+valu;});});问题是变量valu的输出是整个循环的第一个复选框