草庐IT

javascript - native 映射、过滤器等方法是否已优化以在可能的情况下在单个中间数组上运行?

考虑下面的代码片段,它将一个对象数组转换为一个数字数组,过滤掉负值,然后乘以2:varobjects=(newArray(400)).fill({value:Math.random()*10-5});varpositiveObjectValuesDoubled=objects.map(item=>item.value).filter(value=>value>0).map(value=>value*2);当像这样链接在一起时,总共创建了多少个实际的Array对象?1还是3?(不包括初始objects数组)。特别是,我在谈论由filter创建的中间Array对象,然后由链中的第二个map

javascript - 使用 JavaScript 执行 DNS 查找以将主机名解析为 IP 地址

是否可以使用Javascript解析主机名?这里是假设的代码:varhostname="www.yahoo.com";varipAddress=DnsLookup(hostname);console.log(ipAddress);我正在寻找神奇的DnsLookup()函数。:-) 最佳答案 虽然JavaScript中没有标准的DNS功能,但您始终可以调用执行DNS解析的第3方公共(public)API。例如,EncloudprovidessuchanAPI,你可以为它创建一个XMLHttpRequest:varoReq=newXML

javascript - 动态添加选项以选择选择多个 JQuery 插件

Iwanttoaddthetextthatauserinputsinthetextfieldofachosenselectmultipleinputasanoption,andautomaticallyselectit,allofthiswhentheoptiondoesn'texists,iftheoptionexists,thenI想选择它。到目前为止,我已经设法做到这一点:Chosen.prototype.add_text_as_option=function(){$('#id_select').append($('').html(this.search_field.val())

javascript - D3.js - 以编程方式在 Jasmine 中生成拖动事件

我有一个使用D3和Angular编写的折线图组件。它具有用于更改x轴比例的可拖动条。现在我正在尝试使用Karma/Jasmine测试组件。我在单元测试中无法触发拖动事件。鼠标悬停和单击等其他事件也可以正常触发。我认为这是导致问题的d3中“拖动”事件的综合实现。这是我用来触发拖动的代码(此类代码在测试html页面上触发正确的d3拖动事件,但在单元测试中失败)。varleftBar=element.find(".left-bar")[0];varevObjStart=document.createEvent("MouseEvents");evObjStart.initMouseEvent(

javascript - Laravel 5 扩展 Elixir 以包含 browserify

我的browserify工作流程(从coffee到js,使用browserify-shim和coffeeify)是这样的:我有2个主要文件,app.coffee和_app.coffee,分别用于前端和后端。这两个文件分别位于resources/coffee/front和resources/coffee/back中。我正在尝试在laravelelixir中包含browserify任务,因此结果文件将位于public/js/app.js和public/js/_app.js并且稍后可以修改到build文件夹。到目前为止,我已经尝试通过在elixir的node_modulesingredien

javascript - 配置 karma.js 以使用 react 和 ES6

我尝试用ES6开发一个react模块,但找不到任何生成器,所以我不得不从一个基本的生成器开始。我能够配置几乎所有的东西,但是我在尝试配置karma、测试我的模块时遇到了很多问题。这是我的karma.conf.js//Karmaconfiguration//http://karma-runner.github.io/0.12/config/configuration-file.html//Generatedon2015-03-17using//generator-karma0.9.0module.exports=function(config){'usestrict';config.se

javascript - Webpack 和以编程方式注入(inject)的内容脚本

我正在使用React和Webpack开发Chrome扩展程序。在此项目中,不同的模块将使用chrome.tabs.executeScript(null,{file:'content-script-file.js'})以编程方式注入(inject)内容脚本。这就成了问题,因为我使用Webpack来捆绑所有内容。基本上,后台脚本加载了一些模块,这些模块都配置为在特定情况下以编程方式注入(inject)内容脚本。但是,我不知道如何在捆绑的应用程序中“找到”这些内容脚本。它们从未被显式导入,只是在executeScript调用中被引用。同时contentscripts使用了React,所以需要

javascript - 以编程方式填充 ReactJS 输入的正确方法

我正在构建一个运行JavaFXWebkit的headless爬虫,它肯定没有chrome的v8强大。但是我最近遇到了一些问题,我试图输入一个值来对呈现的输入字段使用react。这是我到目前为止所做的但失败了。[注意:我无法控制源代码/React代码。因为我正在尝试抓取目标网站]jQuery-$('input.r_input').val("2");VanilaJS-document.querySelector("input.r_input").value="2";通过jquery触发器触发更改事件-change、blur、keyup、keydown等。创建一个手动事件,例如:event=

javascript - 如何锁定(或沙箱)JDK 的内置 Javascript 解释器以运行不受信任的脚本

我们有一个Java应用程序,想使用内置的Javascript解释器(javax.script.*)运行不受信任的代码然而,默认情况下,解释器允许访问任何java类。例如,脚本中的“java.lang.System.exit(0)”将关闭JVM。我相信这叫做“LiveConnect”,有关详细信息,请参阅Sun的“JavaScriptingProgrammer'sGuide”。我想以某种方式关闭脚本访问Java类的能力,即我只希望脚本能够访问我使用eval()或ScriptEngine上的put()方法。我找到了一些关于如何使用旧的独立版本的解释器(Rhino)实现此目的的文档,例如参见

javascript - d3.js - 以缩写形式在轴上显示大数字

有没有办法在d3.js轴上缩写大数字?我记得在网上看到一个辅助方法,但找不到了。我想缩写大数字以减少图表边距并使其更易于阅读。即1,000,000=1M等如果有人可以发布指向d3.js帮助器类的链接,我们将不胜感激。 最佳答案 查看此链接https://bl.ocks.org/mbostock/9764126这对我适用于d3v4:functionmake_y_gridlines(){returnd3.axisLeft(yScale).ticks(10,"s")} 关于javascript