草庐IT

数组的删除

全部标签

javascript - 在 javascript 中声明具有特定长度的数组有什么好处?

这个问题在这里已经有了答案:Howtoinitializeanarray'slengthinJavaScript?(20个答案)关闭8年前。在大多数javascript应用程序中,我通常像这样声明一个数组varx=[];但我在MDN上看到了大量采用这种方法的示例代码varx=newArray(10);对于V8/其他现代JS引擎,您是否看到了某种方式的真正好处?

javascript - 选择并删除所有匹配的数据属性

我正在尝试找到一种方法来从页面中删除来自不同类型元素的所有匹配数据属性。我现在循环一个数组,但名称列表太长了,我希望有更好的方法来删除我的自定义数据属性......使用正则表达式模式?//代码vardataArr=['data-myplugin-value','data-myplugin-id',............'data-myplugin-name'];$.each(dataArr,function(i,a){$('['+a+']').removeAttr(a);}); 最佳答案 如果您不介意使用XPath,这是我的解决方

javascript - 如何合并维数组

varlist1=[{id:'node1',children:[{id:'node11',children:[]}]}];varlist2=[{id:'node1',children:[{id:'node13',children:[]}]}];varresultList=[{id:'node1',children:[{id:'node11',children:[]},{id:'node13',children:[]}]}];我所有的数组都是树,一个节点只能属于一个父节点。我想合并list1和list2得到resultList。我试了很多方法,递归回调,字符串搜索和替换等等,但我还是想不

javascript - 如何在 Vue.js 中保持可排序数组和组件的顺序

我正在使用Vue.js和Dragula制作一个拖放图block页面。每个图block都包含自己的一组数据,因此每个图block都是一个Vue组件。问题是,一旦我拖放其中一个图block,Vue实例中的DOM元素和数据数组就会失去同步并开始引起问题。只是拖放不会产生问题,但是一旦我拖放某些东西然后尝试删除它,一切都会出错。这是一个fiddle:https://jsfiddle.net/wfjawvnL/13/这是我的HTML,带有组件模板:{{$data|json}}{{name}}Index:{{index}}✗这是我的Vue实例:varvm=newVue({el:'#a

javascript - 如何对一个JS数组进行批量排序(为了性能)

我有一个JS应用程序需要对一个大数组进行复杂的排序然后显示它。使用内置的array.sort(cb)方法处理我的数据最多可能需要1秒。这足以让我的UI变得卡顿。因为UI的高度仅足以在屏幕上显示已排序数组的一个子集,而其余部分位于滚动条下方或已分页,所以我有了一个想法。如果我创建一个遍历大型数组的算法并快速排序,使得前N项完全排序,但数组中的其余项排序不完全,会怎样?每次我运行我的算法时,它都会从上到下对数组进行更多排序。这样我就可以将我的处理分解成block并拥有流畅的用户界面。在最初的几秒钟内,数组不会被完美排序,但缺陷会在滚动条下方,因此不会被注意到。我天真的解决方案是编写我自己的

javascript - 为什么 SharedWorker onConnect 事件有一个 Ports 数组?

在我见过的所有例子中,它们都与此类似onconnect=function(e){varport=e.ports[0];port.onmessage=function(e){varworkerResult='Result:'+(e.data[0]*e.data[1]);port.postMessage(workerResult);}port.start();}是否存在ports数组包含多个元素的实例?在SharedWorker上使用chrome://inspect并打印出e,我得到无论产生多少个共享SharedWorker的实例,其长度始终为1。为什么它不只是一个MessageEvent

javascript - 沿对 Angular 线查找数组中的相同值

我有一个数组,比方说vararray=[[1,0,0,0,0,0,0],[0,1,0,0,0,1,0],[0,0,1,0,1,0,0],[0,0,0,1,0,0,0],[0,0,1,0,0,0,0],[0,0,0,0,0,0,0]]我想创建一个来查找数字在对Angular线上出现四次的所有匹配项。我目前正在使用functioncheckDiagonal(array,bottomToTop){varYlength=array.length;varXlength=array[0].length;varmaxLength=Math.max(Xlength,Ylength);vartemp;v

javascript - 为什么有一个观察者而不是我的数组?

我的Vue组件包括以下代码:exportdefault{data(){return{sailNames:[]}},methods:{showName:function(e){//[3]calledby@clickeventfromDOMconsole.log(this.sailNames);//[4]shows:[__ob__:Observer]},getJsonData(){//[1]calledoncreated()hook$.getJSON("./src/res/sails.json",function(data){constsailNames=[];$.each(data,fu

javascript - axios post数组数据

我正在尝试向我没有太多控制权的服务器发送发布请求。我唯一知道的是,如果我在Postman中发布以下数据,我可以获得正确的响应x-www-form-urlencodedradiobuttoncheckedEnteredthefollowing2arraydata:product_id_list[]pid1234product_id_list[]pid1235Header-Content-Type:application/x-www-form-urlencodedMethod:Post但是当我尝试通过axios进行操作时,似乎无法通过正确的参数数据。我试过了axios.post('http

javascript - Angular:自动完成字段在删除元素后更改焦点

我有一个使用PrimeNG组件的Angular2应用。UI具有多选自动完成组件(p-autoComplete),类似于thedocumentation中的组件:唯一的区别是,在我的例子中,输入字段具有固定的尺寸和滚动条。问题:每次当我从自动完成列表的中间删除一个元素时,它会将焦点移动到输入字段的底部。它看起来像这样:这对用户来说非常烦人,尤其是当有几个字段应该被删除时。问题:如何在删除元素后强制滚动保持在同一位置?如何重现:更具体地说,您可以通过添加下一个css来重现该问题max-width:150px;max-height:100px;overflow-y:auto;直接在docum