草庐IT

所有的

全部标签

javascript - 使用 mocha,我如何运行名​​称中*没有* (slow) 的所有测试?

我有很多测试,其中一些名称中有“(慢)”:其中一些比标记为(慢)的测试慢,但其他测试依赖于它们,因此不能跳过。我只想跳过名称中带有(慢)的那些——这可能吗?我正在使用Mocha。 最佳答案 在我看来,您正在为要在浏览器中加载以运行Mocha的页面执行此操作。要在浏览器中执行此操作,您可以在页面的URL中传递这些参数:grep大致对应于命令行上的--grep选项。这将运行的测试范围缩小到与传递给grep的表达式相匹配的测试。但是,目前(甚至从2.0.1开始)没有办法让Mocha将此参数解释为正则表达式。它总是被解释为一个字符串。这就是

Javascript 获取所有直接子项

我需要获取一个元素的所有直接子元素。就像这里一样:我需要两个类为“2”的DIV使用类为“1”的一个。纯JavaScript-没有库。(在这个例子中他们是同一个类只是为了更清楚。在我的需要他们有不同的,未知的类。) 最佳答案 一种选择是使用directchildcombinator,>和通用选择器*,以便选择任何类型的直接子元素:document.querySelectorAll('.element>*');或者,还有一个.childrenproperty这将返回所有直接子元素:document.querySelector('.ele

javascript - 获取无组织对象数组中所有键的有效方法

我想获取对象数组中的所有键。最初我只是抓取数组中的第一个对象并使用:varkeys=Object.keys(tableData[0]);但是当我仔细查看数据时,我注意到第一行没有包含所有需要的键。在以下示例中,第三项包含所有键,但您可能会遇到需要组合多个对象才能获取所有键的情况。vartableData=[{first:"jeff",last:"doe",phone:"2891"},{first:"sarah",phone:"this",county:"usa"}{first:"bob",last:"brown",county:"usa",phone:"23211"}];我怎样才能获得

javascript - 是否可以为我站点上的所有 jQuery 验证使用站点范围的默认设置?

我想在我的站点上使用所有jQuery验证的站点范围默认设置,我希望每个表单都使用以下设置,但随后在每个表单的基础上更改规则和消息。这可能吗?$('#myForm').validate({errorClass:'field-validation-error',errorElement:'span',errorPlacement:function(error,element){element.next('span').remove();error.insertAfter(element).removeClass('field-validation-error').addClass('ui-

javascript - 将现有的 JavaScript 项目导入 Grunt/Brunch 项目

我观看了PaulIrish宣布Yeoman(www.yeoman.io)的演讲,并且我对运行连续构建环境的概念非常着迷。不满足于等待Yeoman邀请,我尝试了Grunt和Brunch。两者都可以轻松安装,而且我可以轻松启动并运行新项目。我不明白如何将现有项目迁移到任一平台。我的项目使用单个命名空间并为模块使用两个约定(一个用于实例化另一个用于实用程序),每个约定都包含在导出到实例或命名空间的自执行匿名函数中。我至少有200个模块和更多简单的辅助函数导出到命名空间;因此,使用控制台在grunt/brunch项目中创建这些,然后单独手动导入每个模块,效率并不高。此外,我使用了至少15种不同

javascript - 是否可以使用 Javascript 检测所有版本的 IE?如何?

Web开发的新手,请多多包涵。我想看看我用的浏览器是不是IE(所有版本)如果检测到IE,我需要更改CSS。请指出正确的方向。 最佳答案 这是我用的JS(functiondetectIE(){varua=window.navigator.userAgent;varmsie=ua.indexOf('MSIE');vartrident=ua.indexOf('Trident/');varedge=ua.indexOf('Edge/');if(msie>0){//IE10orolder//Dosomestuff}elseif(trident

javascript - 更新数组中的项目会更新所有项目

我正在开发一个使用vuejs和vuex的应用程序,它使用项目,每个项目都有一个或多个工作。我可以添加、删除和更新作业。添加和删​​除工作完美,但更新不是。vuex开发工具中的状态:我的HTML:0"class="btnbtn-dangerbtn-sm"@click="deleteJob(index);">如您所见,我有一个显示我所有作业的v-for。在我的作业中编辑一个值时,我使用@change事件来更新我的值。而且,在底部,我有两个按钮来添加和删除作业行。我的商店分为模块。主要商店看起来像这样:importVuefrom'vue'importVuexfrom'vuex'Vue.use

javascript - 如何从 JavaScript 中的字符串中获取所有数字?

这个问题在这里已经有了答案:Howtomatchmultipleoccurrencesofasubstring(3个答案)关闭2年前。假设我有一个输入字段并且想要解析提交的字符串中的所有数字。例如,它可以是:HiI'm12yearsold.如何在没有通用模式的情况下解析所有数字?我试过:x.match(/\d+/)但它只抓取12并且不会越过下一个空格,如果用户输入更多数字且中间有空格,这就会出现问题。

javascript - Express Middleware 为所有 app.get() 填充一个 Jade 变量

我有一个名为layout.jade的Jade文件,我的所有模板都对其进行了扩展。如果用户当前已登录(这在req.session中保持跟踪),我希望能够在其中有一个注销按钮。所以layout.jade会有类似的东西,-if(loggedin)a.navButton(href="/logout")LogOut页面的路由看起来像,app.get("/foo",function(req,res){res.render("foo",{loggedin:req.session.isValidUser});});问题是,我不想在每条路由中都手动填充loggedin变量。有没有一种方法可以使用Expr

javascript - 在 G 标签中包装现有的 SVG 元素

这似乎是一个简单的问题,但我很难回答:Isitpossibleto"wrap"existingSVGshapesinanewSVGgtag(i.e.group)usingd3.js,.wrap()在jQuery中的工作方式?如果我只是“手动”创建一个新的g标签,那么我将如何将现有元素移动到该g中? 最佳答案 如果您将现有的DOM元素传递给append或insert,该元素(及其子元素)将从它们在DOM层次结构中的当前位置移动到您'刚刚插入它们。varstuffToBeWrapped=d3.selectAll(".stuff");st