草庐IT

算法与代码

全部标签

javascript - 一个 "safe place"来评估 Javascript 中的受信任代码(具有特定上下文)? [编辑: how can you break it?]

不要在标题上评判我,我知道eval是邪恶的,但我这样做是有原因的,而且会非常有限。事情是这样的:我想创建一个安全的空间,我可以在其中运行特定的(和受信任的)代码,并检索结果(如果它符合我的期望)。出于安全原因,我想将它从所有其他范围中删除(这个空间被要求提供结果,并且应该不能单独将任何内容导出到周围的范围)。我找到了一个似乎可行的解决方案,它也可以为执行添加上下文,但我不确定它是否有效,或者该系统中是否存在安全漏洞。你能告诉我它是否有问题吗?它实际上创建了与全局变量同名的本地变量,以防止访问它们。它还剥离了功能(我将添加功能以保留我想要保留的功能)。该函数声明为最接近全局变量,以避免更

javascript - 电子电路图组件连接算法

Closed.Thisquestionneedstobemorefocused。它当前不接受答案。想改善这个问题吗?更新问题,使其仅关注editingthispost的一个问题。7年前关闭。Improvethisquestion我正在创建一个网络服务,旨在模拟电子电路的工作方式。project甚至还没有进入Alpha阶段。我坚持该项目的一些重要里程碑:当一个人试图将一个组件的引脚连接到其他某个引脚时,应该建立连接线。首先,连接线只是一条直线,几乎没有任何方法可以更改它。然后,它变成了弯曲的线,可以添加,移动和删除点,从而确定了线的弯曲方式。现在,它(连接线)是使用A*算法创建的。实现还

javascript - Facebook 的 URL 匹配算法如何工作?

这个问题在这里已经有了答案:WhatisthebestregularexpressiontocheckifastringisavalidURL?(61个回答)关闭9年前。你知道如果你去facebook.com并在状态更新文本区域中输入一个URL,它会自动被检测到,并且Facebook会显示来自该URL/链接的数据的小快照吗?Facebook甚至不关心您输入的URL是否带有http://等协议(protocol)。我希望复制这种行为。现在我有这个正则表达式:((?:https?:\/\/)?)((?:[a-zA-Z0-9\-]+\.)+(?:com|org|net|gov|mil|biz

javascript - 如何找到等待 promise 的 JavaScript 代码

我们有一个相当复杂的JavaScript异步系统。JavaScript库中的所有函数都设计为异步的。我们主要使用AngularJS延迟对象,一些部分使用jQuery(不过我们不会将它们混在一起——即Angular代码等待Angular延迟promise)。我们遇到的问题是代码在启动时似乎“挂起”,5次中有2次。缓存JS代码和promise解析的时间似乎有问题。似乎没有任何工具或任何东西可以指出发生挂起时有问题的代码正在等待什么。如何找到等待promise的JavaScript代码?谢谢。 最佳答案 所以错误实际上最终与promise

javascript - 我在使用毯子的 Mocha 代码覆盖率中获得 0% 覆盖率 0 SLOC

我正在尝试获取MOCHAJS测试中的代码覆盖率。我正在使用毯子,但我得到0%的覆盖率0SLOC为什么我不明白。我的package.json是{"name":"basics","version":"1.0.0","description":"","main":"index.js","scripts":{"test":"mocha&&mochatest--requireblanket--reporterhtml-cov>coverage.html"},"author":"","license":"MIT","devDependencies":{"chai":"~2.2.0","mocha"

javascript - QML - 将 JS 函数的代码作为字符串获取

似乎可以在JavaScript中获取函数的代码,而且非常简单:functionfoo(){...}foo.toString()但是,在QML中这样做给我带来了一个相当乏味的function(){[code]}那么有没有办法也得到[code]部分呢?我也试过JSON.stringify()但没有任何效果。 最佳答案 我想总结一下评论中的讨论,因为这可以作为future搜索的一个很好的回应。如评论中所述,它看起来是QML的一个明显错误。Here他们声称:theQMLruntimeimplementstheECMAScriptLangua

javascript - 使用对象变量屏蔽参数时,转译代码会抛出错误

我们尝试将以下代码移植到ES6:functionapitest(data){data.cb(true);}functiontest(cb){apitest({cb:function(data){commit(cb,data);}});functioncommit(cb,data){cb(data);}}test(data=>{document.write(data);});它可能看起来有点困惑,但它确实符合我们的预期(返回true)并且不会抛出错误。但是,Babel将其转译为:"usestrict";functionapitest(data){data.cb(true);}functi

javascript - 如何将 `data-trim` 和 `data-noescape` 应用于 Reveal.js 中的 Markdown 代码块?

有没有办法在markdown代码块中使用以下两个属性(而不是使用HTML)?...我尝试在页面加载后以编程方式添加这些,但它们没有被使用(有意义)。我还查看了是否可以通过将这些设置作为选项传递给marked.js来始终拥有这些设置。/markdown.js但插件似乎不允许这样做。这与使用Reveal.js有关-seedocumentation. 最佳答案 我目前的解决方法是使用inlinehtml相反:...elementattributes不幸的是,hack似乎没有添加空属性。 关于j

javascript - node.js 强制只有一个线程执行代码

当我启动我的应用程序nodeapp.js时,正在运行的进程只有1个线程。无论它运行的时间越长,为该进程创建的线程就越多。问题是当我想像这样执行特定类型的代码时:vario=require('socket.io')(process.env.PORT);它失败了,因为信号是从多个线程发送的,因此代码没有成功执行。简单的测试,如果这样做:vario=require('socket.io')(9001);vario=require('socket.io')(9002);vario=require('socket.io')(9003);vario=require('socket.io')(900

javascript - 为什么这段 JavaScript 代码经过 Node.js 优化后运行速度变慢了

我正在为ICPC创建一个解决方案使用JavaScript和Node.js的问题当我遇到一个有趣的问题时:在某些情况下,我的程序在同一数据集上的运行速度会慢两倍。我精简了它,直到我得到这个演示行为的最小示例:functionsolve(arr){consttotal=arr.reduce((a,c)=>a+c,0);constcount=arr.length;for(leti=0;i这是使用Nodev10.15.1运行node--trace-optcode.js的输出:[marking0x005062b82521foroptimizedrecompilation,reason:small