草庐IT

javascript - 有没有一种快速的方法可以从 Javascript 中的数组中删除特定值?

我有一个数组vararray=["google","chrome","os","windows","os"];我想从数组中删除值"chrome"而数组不变成字符串。有办法做到这一点吗? 最佳答案 没有比找到它然后删除它更快的方法了。找到它你可以用一个循环或(在支持它的实现中)indexOf.您可以使用splice删除它.实例:http://jsbin.com/anuta3/2vararray,index;array=["google","chrome","os","windows","os"];if(array.indexOf){i

javascript - 另一种获取数组 Javascript 整数的所有组合的方法

我想迭代一个数组并找到所有差为2的对这是我目前所拥有的:varnumberOfCases=5;vardiff=2;varinput=[1,5,3,4,2];getPossiblepairs(input);functiongetPossiblepairs(input){for(cmpininput){for(numberininput){if((input[cmp]-input[number])==diff){console.log("("+input[cmp]+","+input[number]+")");}}}}这行得通,但我仍然对使用两个for循环感到内疚,因为bigO是O(n^2

javascript - jQuery,寻找一种更智能的初始化方式

我正在寻找一种更好的方法来管理大型项目中的全局组件/插件/小部件初始化。它有许多jQuery支持的组件,我想快速高效地初始化这些组件,在搜索互联网之后,我只真正找到了一些短视的例子,这些例子只在较小的网站上是现实的/高性能的。问题我想找到一种聪明而优雅的方法来摆脱它:$(function(){$('.widget-one').widgetOne();});$(function(){$('.widget-two').widgetTwo();});$(function(){$('.widget-three').widgetThree();});$(function(){$('.widget

javascript - 单击元素时一种模式呈现不同的模板

我有不同的按钮(一个用于创建“冲刺”,另一个用于创建评论,等等)。执行这些任务的表单附加到一个模式对话框中,当您单击不同的按钮时会显示该对话框。这些是流程:点击“Sprint”按钮>附加“Sprint”表单>显示模态然后如果你点击其他按钮:点击“评论”按钮>清空模态内容>附加“评论”表单>显示模态目前,不同的内容保存在一个字符串中,当您单击按钮时,它会附加到模态框。但现在我正在使用Backbone和Underscore模板,但我不知道如何做同样的事情。我不想将所有模板都放在模式中并根据您单击的按钮显示它们;我想在点击时附加一个已经缓存的模板。有没有办法用Backbone和Undersc

javascript - 有没有一种方法可以构建包含来自包位置的单个文件的 Dojo 模块?

我有一个小型应用程序的以下构建配置文件:varprofile=(function(){varcopyOnly=function(filename,mid){/*..snip..*/};return{basePath:"../../src",releaseDir:"../dist",releaseName:"lib",action:"release",packages:['dojo','dijit',//'dojox','amd',{name:'lodash',location:'lodash',trees:[[".",".",/(\/\.)|(~$)|(vendor|test)/]]}

javascript - 一种计算响应式网格中列的方法

虽然我还没有找到答案,但问题很简单:有没有办法,除了蛮力,计算响应式网格中的列数?#grid-container{width:100%;height:85%;position:relative;padding:var(--gap);/*adjustedwithJStomakevar(--gap)responsive*/display:grid;grid-gap:var(--gap);/*adjustedwithJStomakevar(--gap)responsive*/grid-template-columns:repeat(auto-fill,minmax(300px,1fr));b

javascript - 一种立方体曲面星形寻路启发式算法

我正在构建一个snakegame在立方体的表面上播放。目前它使用Dijkstra算法进行寻路。尽管对集合和优先级队列数据结构进行了优化,但它仍然有点太慢了。当蛇吃掉食物并开始寻找新食物时,您会注意到延迟。我试图让它改用A*,但找不到好的启发式算法。在具有4个运动方向的平面网格上,我会使用曼哈顿距离。我试过使用3DManhattan距离abs(dx)+abs(dy)+abs(dz)但没有成功,原因很简单:对于蛇来说,游戏世界真的是6grids(correspondingtothefacesofthecube)具有不寻常的环绕属性。在代码中,每个方block都存储在一个grid[15][1

javascript - 有没有一种简单的方法可以去除 mootools 命名空间污染?

我开发的一个客户端javascript库在某些方面使用对象作为散列。它使用属性名称作为键,使用for...in循环遍历从Json数据解析的对象。例如...(伪代码)varconversations={'sha1-string':{name:'foo',messages:[]}}for(varidinconversations){console.log(id);console.log(conversations[id].name);}不幸的是,MooTools(和Prototype等)将方法添加到全局命名空间,所以我的for...in循环现在遍历MooTools的添加项(例如limit、

javascript - 有没有一种方法只有在条件为真时才执行 jQuery 链接的分支

我对jQuery的熟练程度大概是7或8分(从1到10分),所以我不确定这是否有意义,但我想知道是否有人知道jQuery函数或可能是一个插件,它允许仅在给定条件为真时才执行jQuery的分支。否则,我很想听听是否有人认为这个概念在某些方面存在缺陷(编辑和如何它是有缺陷的)虽然可以使用类似于以下的普通JavaScript语法来控制各种事件的附件:vardesiredElement=$('.parent')//findtheparentelement.hover(overFunction,offFunction)//attachaneventwhileI'vegottheparentin's

javascript - 有没有一种方法可以防止在 jQuery 对象化 HTML 片段中加载图像

我有一个HTML片段,我正在通过jQuery对其进行对象化,以便从中提取一些数据。这个片段有一些我不希望浏览器下载的图像资源。有办法吗?我当前代码的简化版本:varhtml='BlahBlah.........';varobj=$(html);//thismakesthebrowserdownloadthecontainedimagesaswell!!!varmyData={item_1:obj.find('.data:first').text(),item_2:obj.find('.data2:first').text(),....//andsoon..};