草庐IT

es匹配查询

全部标签

javascript - 将查询过滤器应用于对象的 JavaScript 数组

constsample_table1_data=[{title:'aa-1',customers:['a','b']},{title:'aa-2',customers:['a','c']},{title:'bb-1',customers:['d','e']},{title:'cc-1',customers:['b','e','f']},{title:'dd-1',customers:['f','g']},{title:'dd-2',customers:['g']},]我正在尝试过滤如上所示的对象数组。假设我对title是一个字符串,而customer是一个字符串数组。我做了一个名为fi

javascript - 正则表达式:匹配除第一个小数以外的所有小数

要匹配除第一个小数以外的所有小数,正则表达式模式是什么?我正在使用javascript的replace(),并且想删除字符串中除第一个小数点之外的所有内容。例子:1.2.3.4.5-->1.2345.2.3.4.5-->.23451234..-->1234. 最佳答案 你可以这样做:functionparseAndNormalizeDecimal(dec){vari=0;varresult=dec.replace(/\./g,function(all,match){returni++===0?'.':'';});returnresu

javascript - 用 window.find() 匹配所有出现的地方

例如,如果我有一个如下所示的HTML网页HelloTechies,Techieshere.如果我使用搜索“Techies”varsel=window.getSelection();sel.collapse(document.body,0);document.body.offsetHeight;if(window.find("Techies",true)){document.execCommand("hiliteColor",false,"YellowGreen");sel.collapseToEnd();}它仅突出显示“技术人员”的第一次出现。但是当我使用Ctrl+F搜索时,第一个出现

javascript - AngularJS 推送到 $resource 查询检索到的数组并保存

检查下面的代码。问题在评论中。angular.module('MainStreetMower.services',['ngResource']).factory('Videos',function($resource){return$resource('/api/jobs/1/');});functionVideoListCtrl($scope,Videos){$scope.videos=Videos.query();$scope.what=function(){//properwaytopushtothevideosarrayand$save()thenewarray.}}

javascript - 当没有匹配值时,解决方法 jquery 在 SELECT 上设置 val() 行为

如果我有这个选择框:-ABC如果我尝试运行$("#s").val("4"),选择会变为“0”。(请参阅此处的行为:http://jsfiddle.net/4NwN5/)如果我尝试将选择框设置为选择框中不存在的值,我该如何做到这一点,则不会发生任何变化? 最佳答案 你可以这样试试:vartoSel=3;//Sayyourvalueisthisif($("#soption[value="+toSel+"]").length>0)//Checkifanoptionexistwiththatvalue{$("#s").val(toSel);

javascript - 如何识别 ES6 生成器

假设我有一个这样的生成器函数:varg=function*(){yield1;yield2;yield3;};vargen=g();我如何以编程方式判断g是一个生成器函数,或者gen是一个迭代器?这似乎是一种可能性:g.constructor.name==='GeneratorFunction'有没有更好的办法?更新:我结束了takinganapproach类似于Eric'sanswer,但使用eval首先确定目标平台是否支持生成器。这是实现:varGeneratorConstructor=(function(){try{vargenerator;returneval('generat

javascript - Regex 只匹配 it 和 its,不匹配 it's

我正在尝试获取一个正则表达式来匹配单词it、its和it's。我正在使用\b来匹配单词,但它似乎只是匹配字符。我怎样才能让它匹配除空格以外的任何内容?到目前为止,这是正则表达式:\b(it|it's|its)\b。我怎样才能让它与它、它是和它的词完全匹配? 最佳答案 这个会起作用:\bit(?:'?s)?\b您的模式不适用于it's因为在交替中项目it(首先测试)在之前成功它是根本没有经过测试。你也可以写\b(it's|it|its)\b。 关于javascript-Regex只匹配it

javascript - 为什么匹配函数只返回第一个字母?

如果元字符?与前面的元素匹配零次或一次,则为什么"ab".match(/a?/)返回["a"],但是"ab".match(/b?/)返回[""]? 最佳答案 因为那是第一场比赛。正则表达式首先尝试匹配位置0,其中正则表达式#1匹配a,正则表达式#2匹配空字符串。然后它尝试匹配位置1,其中regex#1匹配空字符串,regex#2匹配字母b。最后,它尝试在位置3进行匹配,其中两个正则表达式都匹配空字符串。将返回的匹配项与全局标志进行比较:>"ab".match(/a?/)["a"]>"ab".match(/a?/g)["a","","

javascript - 如何使用 mocha/chai/chai-as-promised 测试 ES7 异步函数

我有以下功能要测试://...constlocal=newWeakMap();exportdefaultclassUser{//...asyncpassword(password){if(!password)returnlocal.get(this).get('hash');//removethisforsecurityreasons!if(password.length现在我想用mocha测试这个函数,chai和chai-as-promised做这个测试用例:importchaifrom'chai';importchaiAsPromisedfrom'chai-as-promised'

javascript - 使用 Babel.js 将 ES6 箭头函数编译为 Es5

在Mozilla文档中查看ES6箭头函数的文档时,我了解到箭头函数应用严格模式的所有规则,除了在link中描述的规则。varf=()=>{'usestrict';returnthis};varg=function(){'usestrict';returnthis;}console.log(f());//printsWindowconsole.log(g());//printsundefined//wecantestthisinfirefox!但是,Babel.js将箭头函数代码转换为ES5代码,返回undefined而不是Window(demolink)"usestrict";setT