草庐IT

explore_array

全部标签

javascript - 我能否让 Internet Explorer 调试器中断长时间运行的 JavaScript 代码?

我有一个页面正在运行大量的JavaScript代码。仅在InternetExplorer中,并且仅在版本8中,我收到一个长脚本警告,我可以可靠地重现。我怀疑是事件处理程序在无限循环中触发了自己。开发人员工具在脚本运行的重压下严重瘫痪,但我似乎确实能够得到日志,告诉我当我中止时它正在执行哪一行脚本,但这不可避免地是一些深层次的管道的ExtJS我们使用的代码,但我不知道它在我的代码堆栈中的什么位置。一种查看调用堆栈的方法可行,但我希望能够在收到长脚本警告时直接进入调试器,这样我就可以单步执行调用堆栈。发布了一个类似的问题,但给出的答案是针对一个不正确的工具,或者是在二进制搜索无限循环时一次

javascript - Array.prototype 与 [] perf

我还没有真正有机会研究的快速问题。在调用/应用类型的上下文中使用时,哪个性能更高:Array.prototypevs[]?例如:functiontest1(){returnArray.prototype.splice.apply(arguments,[1,2]);}test1([1,2,3,4,5,6,7,8,9]);functiontest2(){return[].splice.apply(arguments,[1,2]);}test1([1,2,3,4,5,6,7,8,9]);我的想法:我会假设Array.prototype方式性能更高,因为原型(prototype)函数可以重用并

javascript - 为什么 Internet Explorer 与后退按钮上的预期功能不同

在我的ASP.NETMVC项目中,我们引入了LucineSearching,(虽然在这种情况下不需要这些细节,只是提供一些背景,因为我相信我的问题与IE浏览器和缓存有关)。在此页面中,用户可以根据关键字过滤他们的搜索。并且用户可以单击转到列出的项目,然后使用浏览器后退按钮或具有javascript代码的手动HTML按钮返回同一页面,onclick="location.href='Javascript:history.go(-1);'").在Chrome、Firefox甚至InternetExplorer9中,用户可以毫无问题地返回他离开的页面。我的意思是它会保留用户输入的值。但是在IE

javascript - Javascript 中的凯撒密码使用 shiftChar() 函数和 Array.map() 方法

我正在尝试通过阅读大量在线教程来学习Javascript,并通过应对coderbyte上的挑战来进行练习。我在CaesarCipher挑战中遇到问题。该函数需要一个字符串和一个偏移量参数,然后返回每个字母字符按提供的偏移量移动的字符串(保留所有非字母字符)。我的shiftChar()函数正在运行,它将获取char和偏移量,并将仅对字母字符应用移位,并将返回新字符。现在已经完成了,我想我可以只获取原始字符串,将其拆分为一个数组,然后使用我的shiftChar()函数将该字符数组映射到一个新数组。但是,我无法让它工作,而且我似乎无法弄清楚原因。关于map方法我是否遗漏了什么?我的理解是ma

javascript - 是否使用 [array].filter 或 _.filter

我的项目包含underscorejs作为依赖项。在内部我需要做很多复杂的数组操作,基本上包括我映射、过滤或减少数组。我们在Array.prototype上有原生的map、filter、reduce方法。但是在underscorejs中也可以使用相同的方法。就我个人而言,使用原生方法对我来说更有意义,因为它比像_(array).filter(function(){})这样的包装对象感觉更自然_.filter(array,function(){}).请提出建议。 最佳答案 这确实是一个基于意见的问题。Lodash将为您提供更好的浏览器支

javascript - javascript Array.prototype.filter() 的时间复杂度?

Array.prototype.filter的大O是什么?我已查看文档(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),但无法解决。 最佳答案 O(N)例子:varwords=['spray','limit','elite','exuberant','destruction','present'];constresult=words.filter(word=>isBig(word));func

javascript - 在 Javascript(但不是 Node)中,我如何划分两个 Uint8Arrays?

我使用的是浏览器内的Javascript,而不是NodeJS。我有两个Uint8Arrays...vard1=newUint8Array([255,255,255,255,255,255,255,255])vard2=newUint8Array([255,255,255,255,237,49,56,0])每个数组都有8个元素,它们是0到255之间的整数。每个数组代表一个更大的数字。比如第一个数组代表正整数0xffffffff我的问题是如何将d1除以d2并得到结果?我读到Javascript中整数的最大值是2^53,我相信这小于我可以拥有的最大值。我不关心结果是什么对象类型,但Uint8

javascript - 如何处理 "a script on this page is causing internet explorer to run slowly"警报?

我正在从javascript调用网络方法。在IE中,如果我向该Web方法传递一个巨大的参数,则会弹出警告“停止运行此sciprt?此页面上的脚本导致InternetExplorer运行缓慢”。是否可以处理"is"按钮上的点击,以便如果用户决定取消脚本执行我可以运行一些替代脚本(在这种情况下,我的“替代”脚本包括关闭一些进度条我在运行长时间脚本之前弹出)。我看过很多解释如何防止显示此警报的帖子,但我不想停止显示警报:我只想能够处理用户决定停止显示的情况脚本执行。 最佳答案 我之前在一个内部应用程序中处理过这个问题,他们不关心浏览器处理

javascript - 在 Internet Explorer 11 中加载巨大的数组导致堆栈溢出

我有一个(生成的)页面,其中有一个非常大的锯齿状数组。它不会在IE11中初始化;我得到SCRIPT28:Outofstackspace和SCRIPT2343:Stackoverflowatline:1。我已经使用随机数据将有问题的页面减少到最低限度,这就是它的样子:Loading...vard=[];vari=0;d[i++]=["XHC_14",0];d[i++]=["ZXS_26","UVT_27","QML_3149","MJO_3150",15993327];d[i++]=["VKG_3156","ZEA_3157","KZG_3159","MNA_3162","AKX_316

javascript - Internet Explorer 11 不通过全屏 API 进入全屏

我正在尝试使用全屏api。API在所有其他浏览器上都能正常工作,但不幸的是ie11没有响应。我正在使用从这里复制的代码:varelement=$doc.documentElement;varrequestMethod=element.requestFullScreen||element.webkitRequestFullScreen||element.mozRequestFullScreen||element.msRequestFullscreen;if(requestMethod){//Nativefullscreen.console.log(requestMethod);reque