草庐IT

遍历算法

全部标签

javascript - 如何在 Nightwatch 中遍历 querySelectorAll 结果

我似乎找不到在Nightwatch中遍历节点列表的innerHTML的正确语法。我试图返回包含在页面正文内容中的每个“a”标签的网址,但我无法找到一种方法来访问我在Nightwatch中的querySelectorAll命令的结果。browser.execute(function(){returndocument.querySelectorAll("div.field-item.evena");},function(tags){console.log(tags.value);console.log(tags.value[9]);})我正在测试的页面上有10个链接。查询选择器似乎正在检索

javascript - 确定定界形状边界的点的算法——使用 javascript

我正在开发一个htmlmap制作器,我想为我们的用户提供通过单击区域快速创建形状的能力,而不是让他们手动定义形状。首先让我们看看我们目前正在做什么。用户想要绘制区域A。他需要做的是在每个点上多次单击以定义形状的边界。我想知道是否有一种算法允许用户在A区域中单击并可以确定要放置哪些点以便在形状边界之后创建接近最佳的形状-基于图像对比度。我处理这个问题的第一个想法是确定离点击点最远的上、左、下、右点。将这四点作为我们的出发点。然后对于每个段,用一个新点对其进行分割,并沿着向量法线移动新点,直到我碰到对比边缘。当然,这种方法有一些局限性,但这是我可以假设的形状可以是凸的,凹的等等...对比度

javascript - 使用Dijkstra算法寻找能够承载最大权重的路径

我有一个图,有X个节点和Y个边。加权边缘。重点是从一个节点开始,并在最后一个位置的另一个节点停止。现在问题来了:将问题可视化。边缘是道路,边缘权重是在道路上行驶的车辆的最大重量限制。我们想驾驶最大的卡车从A到F。我想要从A到F的所有路径的最大允许重量。我可以使用某种Dijkstra算法来解决这个问题吗?我不确定如何以我可以实现的算法的形式来表达这个问题。任何帮助深表感谢。我很困惑,因为Dijkstra算法只考虑最短路径。 最佳答案 如果我没理解错的话,你想找到一些具有最大瓶颈边的节点之间的路径。也就是说,你想要最小边尽可能大的路径。

Javascript 模块化算法

Javascript将以下代码片段计算为-1。-5%4我理解余数定理表明a=bq+r使得0≤r 最佳答案 因为它是一个remainderoperator,不是模数。但是有一个proposalforaproperone.引自Ecma5.1remainderrfromadividendnandadivisordisdefinedbythemathematicalrelationr=n−(d×q)whereqisanintegerthatisnegativeonlyifn/disnegativeandpositiveonlyifn/dis

javascript - 获取对象中所有项目组合的高效算法

给定一个包含n个键的数组或对象,我需要找到所有长度为x的组合。给定X是可变的。binomial_coefficient(n,x)。目前我正在使用这个:functioncombine(items){varresult=[];varf=function(prefix,items){for(vari=0;i输出是:["a","ab","abc","abcd","abd","ac","acd","ad","b","bc","bcd","bd","c","cd","d"]因此,如果我想要n=4中的二项式系数x=3,我会选择所有长度等于3的字符串。{abc,abd,acd,bcd}。所以我分两步进

jquery - 当只需要遍历 DOM、$.ajax 和 Deferred 时替代 jQuery

编辑(2012-04-12):由于提出了这个问题,所以它是nowpossible(asofjQuery1.8)tomakecustombuildsofjQuery.对于我从事的大多数JavaScript项目,我想要一个简单、轻量级的UI堆栈。目前我在我的项目中使用jQuery,但是当我实际上退后一步并查看代码时,我实际上只将它用于:DOMtraversaljQuery.ajax和Deferred是否有另一个库(我不想自己处理所有各种跨浏览器和ES3/ES5的差异)可以为我提供这些功能而无需我个人不需要的所有附加内容?我想到了Dojo,但到目前为止我还没有这方面的经验,理想情况下我想听听

javascript - 遍历数组并成对输出(每个第二个元素的分隔符)

我有一个包含匿名元素的数组。通过php将元素添加到数组中,如下所示:$playlist=array();while(databaseloop){$playlist[]=$a_title;$playlist[]=$a_length;}echojson_encode(array('playlist'=>$playlist));所以数组变成:["Hello.mp3","00:00:14","Byebye.mp3","00:00:30","Whatsup.mp3","00:00:07","Goodnight.mp3","00:00:19"]andsoon然后我用ajaxpost在jquery中

javascript - 在 IE 中遍历 FormData

我正在使用FormData将信息发送回服务器。然而,在某些情况下,我需要在发送之前读出数据。Chrome允许您遍历集合,但IE不提供相同的方法。下面的代码在Chrome中有效://CreateatestFormDataobjectvarformData=newFormData();formData.append('key1','value1');formData.append('key2','value2');//Displaythekey/valuepairsfor(varpairofformData.entries()){console.log(pair[0]+','+pair[1

javascript - Mustache(或 Handlebars)遍历两个列表

我有两个数组:varcontent={"girls":["Maria","Angela","Bianca"],"digits":["21.143.191.2","123.456.78.90","971.6.17.18.1"]};和一个模板:{{girls}}我希望最终结果是:MariaAngelaBianca我尝试过像{{#girls}}{{.}}{{/girls}}和{{#digits}}{{.}}{{/digits}}但无论我以何种方式嵌套它们,我似乎都会重复而不是隔行扫描。有什么想法吗?PS:显然,将来我们会要求提供IP地址,而不是电话号码。PPS:这些都不是真正的IP,请不要尝

javascript - 使用 constructor.prototype 遍历原型(prototype)链

如果我可以使用obj.constructor.prototype访问对象的原型(prototype),那为什么我不能使用obj.constructor.prototype.constructor.prototype遍历原型(prototype)链还得用Object.getPrototypeOf?functionMyConstructor(){this.prop=1;}varo=newMyConstructor();console.log(o.constructor.prototype)//MyConstructorconsole.log(o.constructor.prototype.