草庐IT

take_while

全部标签

javascript - while 循环中的 setTimeout

我已经搜索了如何将setTimeOut与for循环一起使用,但是关于如何将它与while循环一起使用的内容并不多,而且我不明白为什么应该有很多无论如何区别。我已经编写了以下代码的一些变体,但这个循环似乎会使浏览器崩溃:while(src==''){(function(){setTimeout(function(){src=$('#currentImage').val();$("#img_"+imgIdx).attr('src',src);},500);});}为什么?基本上我有一个动态创建的图像,其source属性有时需要时间来加载,所以在我可以显示它之前,我需要继续检查它是否已加载,

javascript - 当循环遍历 JS 数组的值并删除值时,是否需要使用 while 而不是 for?

varmyArray=[1,2,3,4,5,6,7,8,9];functionisOdd(value){returnvalue%2;}for(vari=0;i上面的代码采用任意长度的数组并检查每个值。如果数组位的值满足任意条件(在本例中为奇数),则将其从数组中移除。Array.prototype.splice()用于从数组中删除值,然后递减i以说明数组中的其余值“向下移动”以填补删除值留下的空白(因此循环不会跳过值)。但是,当i等于数组的长度时,for循环结束,随着值的删除,数组长度变短。myArray.length的值是随着循环的进行而动态减少,还是它在循环开始时保存值而不是在值被删

javascript - 如何在 RxJs Observable 中使用 Skip and Take

我正在学习Angular2、TypeScript、RxJs等,但我在使用RxJs和Observable返回服务内的数据子集时遇到问题。我希望下面的getCars函数读取一个json文件,解析它并返回一部分数据(偏移量和计数)。但是,我总是能取回所有数据(我正在测试的文件中有200个实体/汽车)。我做错了什么?实体服务@Injectable()exportclassEntityService{constructor(privatehttp:Http){}getCars(offset:number,count:number):Observable{returnthis.http.get('

javascript - 在 Javascript 中,While 循环在控制台上运行时从 1 计数到 5 时重复最后一个数字

这个问题在这里已经有了答案:Javascriptwhileloopreturnvalue(3个答案)关闭6年前。在控制台上运行以下代码时:varcounter=0;while(counter控制台o\p:01个2个3个4个4而下面的代码工作正常,没有重复最后一个值:for(vari=0;i控制台o\p:01个2个3个4现在,如果我在上面提到的while循环之后放置上面的for循环,输出就完全没问题了:varcounter=0;while(counter控制台o\p:01个2个3个4个01个2个3个4然而,如果我在for循环之后放置while循环,则会重复找到的最后一个数字。for(va

javascript - 用于分页的 RXJS while 循环

我尝试查询swapapi中的所有人数据.URLswapi.co/api/people返回一个对象,其中包含一个人数组和我从中获取下一个数据的URL(swapi.co/api/people/?page=2)。我想要做的是,每次有新页面可用时,订阅方法都会更新Angular组件。我是响应式(Reactive)编程模型的新手。如何实现while循环或一系列Observable?这适用于第一页:getAllPeople():Observable{letnextUrl=http://swapi.co/api;letsource=Observable.create(observer=>{this.

控制台中的 JavaScript while 循环打印额外的结果

谁能解释为什么以下代码在作为函数的一部分运行时有效,但在Chrome控制台窗口中单独运行时会产生奇怪的结果?varfoo=function(){varx=1;while(x但是,当我直接在Chrome控制台中运行while部分时,我得到1,2,3,这是没有意义的(请参见输出图像):vary=1;while(y请注意,关于console.log有一些类似的问题导致undefined(Chrome/Firefoxconsole.logalwaysappendsalinesayingundefined),但是我的示例中没有函数调用,while永远不会返回任何值。

javascript - ReferenceError : "twttr is not defined" even while using twttr. 就绪()

Firebug控制台抛出错误。它声明我尝试用于跟踪社交事件的代码是在//platform.twitter.com/widgets.js完成异步加载之前使用的。ReferenceError:twttrisnotdefinedtwttr.ready(function(twttr){但是,我遵循了Twitter文档(https://dev.twitter.com/web/javascript/events),并将其包装在twttr.ready()周围,就像处理Facebook事件一样。//loadsocialsharingbuttonsasync(function(w,d,s){functi

javascript - 对javascript中的while循环感到困惑

我在这里可能有点厚,但请回答我这个问题。考虑以下代码:a=1;while(a如果我运行它,我会在控制台中获得从1到6的值,然后是另一个6。现在看看这个:a=1;while(a现在运行它会得到从1到7的值。为什么会这样?我的理解是语句block​​只有在表达式的计算结果为真时才会运行。在我的第二个例子中这怎么可能?为什么6在第一个出现两次?我很困惑。如果你能简单地解释一下(我还在学习)那就太好了。 最佳答案 控制台为您打印最后一条语句的计算值。在第二种情况下,您预递增,因此它的值为7而不是第一种情况下的6。更改您的console.lo

javascript - 获取类型错误 : invalid 'in' operand obj while fetching data using ajax

下面是我的ajax调用$(document).ready(function(){$("#blog").focusout(function(){alert('Focusouteventcall');alert('hello');$.ajax({url:'/homes',method:'POST',data:'blog='+$('#blog').val(),success:function(result){$.each(result,function(key,val){$("#result").append(''+val.description+'');});},error:functio

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