草庐IT

根据条件返回不同列

全部标签

javascript - 根据预定义的顺序对字符串列表进行排序

我有一组颜色,我想对其进行排序。但是,我不想使用它们的“自然”顺序对它们进行排序,而是让它们按以下顺序排列:varorder=['white','yellow','violet','blue','orange','red','maroon','brown','black'];因此,例如,对这个数组进行排序varitems=['blue','violet','white','black','orange'];应该回馈['white','violet','blue','orange','black'];这是我目前所拥有的:varitemsInOrder=[];for(vari=0;i-1)

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 - 选择后 Bootstrap 日期选择器返回焦点

如果你初始化一个bootstrapdatepickerfrometernicode使用autoclose:true,会发生两种不良行为:选择器关闭后,当您跳转到下一个字段时,您将再次从文档的开头开始。这在长表单上可能会非常麻烦。因为选择器以编程方式更改值,所以您拥有的任何关心输入上的模糊事件的监听器都不会正常运行。当您选择选择器值并且输入的值未更改时,实际上会发生模糊。然后bootstrap-datepicker以编程方式更新该字段,因此永远不会用新值触发模糊。这是堆栈片段中的演示:*选择任何字段,从选择器中选择一个值,然后点击Tab$(".datepicker").datepicke

javascript - 从具有异步功能的 Node.js 模块返回值

我为我的Node.js项目编写了一个模块,该模块处理一些数据并返回结果,如下所示:varresult=require('analyze').analyzeIt(data);问题是analyze.js依赖于一个异步函数。基本上它看起来像这样:varanalyzeIt=function(data){someEvent.once('fired',function(){//lotsofcode...});returnresult;};exports.analyzeIt=analyzeIt;当然这样不行,因为result返回的时候还是空的。但是我该如何解决呢? 最佳答

javascript - 为什么将一个非常大的数字解析为整数返回 1

parseInt(123123123123123123123123);//return1parseInt(123123123123123123123123123);//return1parseInt(123123123123123123123123123123);//return1在chrome中测试! 最佳答案 对parseInt()的文档进行一些创造性的阅读为此提供了答案。这是正在发生的事情:parseInt期望它的第一个参数是一个字符串。如果不是,则将其转换为字符串。这实际上很搞笑,因为它似乎是通过...将其用引号括起来并通过

javascript - 检查 `querySelectorAll` 返回值的正确方法是什么?

当使用querySelectorAll时,检查它是否返回任何元素的正确方法是什么?它返回无法检查false的内容。这似乎不起作用:varelements=document.querySelectorAll('.class');if(elements){//doesn'twork,`elements`isalwaystrue}现在我正在通过.length属性进行以下检查:varelements=document.querySelectorAll('.class');if(elements.length){//querySelectorAllreturnedDOMelements}你是这样

javascript - AngularJS http 返回值

我想在AngularJS中编写一个返回值(实际上它是一个字符串)的函数。该值由http请求返回,但异步让我抓狂。我的第一次尝试是:this.readParameter=function(key){$http({method:"GET",url:"XXXXXXX",headers:{'Content-Type':'application/json'}}).then(functionsuccessCallback(response){returnresponse.data;},functionerrorCallback(response){thrownewError("Error");})

javascript - 当用户从其他选项卡返回时重新加载页面

我在某种重视最新信息的网站上工作。为此,当用户从另一个选项卡切换到网站的选项卡时,我需要刷新页面。有没有办法用JavaScript/jQuery做到这一点?我知道location.reload();用于刷新页面,但我不知道如何告诉JavaScript在选项卡再次激活时(并且只有一次)执行此操作。 最佳答案 你可以使用这个:varvis=(function(){varstateKey,eventKey,keys={hidden:"visibilitychange",webkitHidden:"webkitvisibilitychang

javascript - 如何根据以下内容决定哪个 promise 执行 then/catch

全部:我是Promise的新手,这里有一个例子:varsomeAsyncThing=function(){returnnewPromise(function(resolve,reject){//thiswillthrow,xdoesnotexistresolve(x+2);});};varsomeOtherAsyncThing=function(){returnnewPromise(function(resolve,reject){reject('somethingwentwrong');});};someAsyncThing().then(function(){returnsomeO

javascript - 我如何根据 React 中的 javascript 对象渲染组件 X 次?

我正在尝试渲染X数量的照片,具体取决于OBJECT(photos)的长度。我试过将数据附加到字符串,但它不起作用。有什么好的解决办法吗?varRenderPhotos=React.createClass({getInitialState:function(){return{photos:this.props.photos};},render:function(){varphotoHolder="";for(vari=0;i"{this.props.photos[0].description}"");}return({photoHolder}////{this.props.photos[