草庐IT

所有人

全部标签

Javascript类继承和所有继承的名称?

我有一个类似Starship->Capital->Omega的继承链,我希望能够从Omega类的对象中检索“Omega”。functionStarship(){}functionCapital(){Starship.call(this);}Capital.prototype=Object.create(Starship.prototype);functionOmega(){Capital.call(this);}Omega.prototype=Object.create(Capital.prototype);varomega=newOmega();omegainstanceofOmeg

javascript - 为什么在没有所有者的情况下调用函数会比较慢?

如果我执行以下操作:varabs=Math.abs;abs(-10)不应该比Math.abs(-10)快吗?因为直接调用了abs。这就是引起我注意的原因:Math.absvscustomabsfunction更新:在InternetExplorer11中执行的相同测试显示了完全不同的结果:我推测这是由于对Chrome的V8引擎中的内置函数进行了一些优化。nnnnnn创建的测试这澄清了我想说的话:Propertyshortcut 最佳答案 这个答案被Givi变得毫无用处。查看评论。在用户定义的对象中查找用户定义的函数比查找绑定(bin

javascript - 如何在文本选择中获取所有 <img> 标签?

我环顾四周,但似乎没有一种简单的方法可以做到这一点。jQuery至少没有帮助,它似乎完全缺乏对选择或DOM范围的任何支持。我希望像$.selection.filter('img')这样简单的东西似乎只能用几十行代码来处理手动枚举范围和browserimplementationinconsistencies中的元素。(尽管ierange在这里有所帮助)。还有其他快捷方式吗? 最佳答案 varfragment=getSelection().getRangeAt(0).extractContents();选择中的节点将被移除并在Docum

Javascript扫描线算法查找具有相同x坐标的所有元素

我正在尝试通过使用PUREJavascript(没有其他框架)来实现线扫描算法,它基本上从左到右扫描屏幕并查看共享的所有元素(包括重叠元素)相同的x坐标。例如我有6个带有黑色边框的div元素,它们都随机布局在屏幕上。出于说明目的,我使用垂直的蓝色虚线从左到右扫描整个平面。目标是报告该行经过的所有元素。对于上面的示例,我们如何报告DivA、DivE、DivD以及hyperlinkD在DivD中使用JavaScript? 最佳答案 你可以通过getBoundingClientRectmethod获取元素的位置.然后遍历它们并检查它们是否

javascript - 强制 ASP.NET 为所有用户代理生成 JavaScript

我最近在我的ASP.NETWeb应用程序中注意到,如果我将我的用户代理设置为空字符串(使用FireFox插件来欺骗用户代理),那么ASP.NET将不会生成执行所需的javascript回发。更具体地说,如果您尝试从您的javascript调用__doPostBack(a,b)函数,您将收到一条错误消息,指出该函数未定义。我知道每个浏览器都有一个用户代理,所以这不会经常出现,但问题的本质仍然存在:在某些情况下,无法识别或格式错误的用户代理会使您的网络应用程序无法使用,如果你依赖回发。这类似于这个问题:ASP.netnotgeneratingjavascriptforsomeUserAge

javascript - 如何将点击传播到光标下的所有 div?

我有一堆div绝对位于彼此之上。当我将点击事件绑定(bind)到所有这些时,只有顶部div响应。如何将事件发送到光标下的所有div? 最佳答案 根据FelixKling的建议使用document.elementFromPoint()和Amberlamps的fiddle,并使用jQuery进行DOM交互,我最终得到了以下结果:$divs=$("div").on('click.passThrough',function(e,ee){var$el=$(this).hide();try{console.log($el.text());//o

javascript - Angular.js 对 ng-repeat 的一项进行更改,导致所有其他项上的过滤器运行

我仍然遇到同样的问题,ng-repeat中的过滤器和函数一直被调用。这里的例子,http://plnkr.co/edit/G8INkfGZxMgTvPAftJ91?p=preview,任何时候你改变一行的东西,someFilter过滤器被调用1000次。显然这是因为子作用域上的任何更改都会冒泡到其父作用域,导致$digest运行,从而导致所有过滤器运行(https://stackoverflow.com/a/15936362/301596)。那正确吗?我怎样才能防止它在我的特定情况下发生?如何让它只在发生变化的项目上运行?在我的实际用例中,即使更改甚至不在ng-repeat的项目上,也

javascript - 使用 Javascript 在不将所有内容加载到内存的情况下从大型 CSV 文件读取的最佳方法

我正在使用Atom/Electron构建一个应用程序,该应用程序具有基于数据的视频可视化效果。每个视频都有一个对应的CSV文件,其中包含每一帧的信息。视频大约100分钟,所以文件有很多数据!我遇到的问题是加载和解析文件需要几秒钟的时间。大多数时候这不是问题。但是我需要制作部分视频的播放列表,每次更改视频时加载整个CSV文件不是一个可行的选择。我一直在寻找文件流选项作为fast-csv,但我没有设法开始读取文件的任意部分。编辑:来自FS文档。在这种情况下,问题是我如何知道文件中哪个字节对应于我想要的位置?optionscanincludestartandendvaluestoreadar

javascript - 用反斜杠替换所有未转义的字符匹配

我正在使用正则表达式将其他正则表达式(或正则表达式?)中的(替换为(?:以将它们变成不匹配的组。我的表达式假设没有(?X结构被使用并且看起来像这样:([^\\]-Notbackslashcharacter|^-Orstringbeginning)(?:[\(]-abracket)不幸的是,如果有两个彼此相邻的匹配项,这将不起作用,例如在这种情况下:how((\s+can|\s+do)(\s+i)?)?有了lookbehinds,解决方案很简单:/(?但是javascript不支持lookbehinds,那我该怎么办呢?我的搜索没有带来任何简单的通用后视替代方案。

javascript - 不要删除本地存储的所有键

在我的应用程序中,我希望立即删除本地存储的所有键,但包含单词“wizard”的所有键除外。命令如localstorage.clear();将删除所有内容,我只想保留那些带有“向导”一词的内容,我已经尝试过这种方式,但出现错误,因为如果我删除匹配项,在下一次迭代中将跳过一个键,我会收到错误,试图在现在为空的位置搜索匹配项,因为它已被删除。我该如何解决?这是我的代码:for(vari=0,len=localStorage.length;i 最佳答案 您可以遍历localStorage的entries,如果值包含wizard则删除键:lo