草庐IT

一次遍历

全部标签

javascript - 为什么 for...in 循环遍历函数名

在IE8中测试一些JavaScrpt代码时,我在执行一个简单的for..in循环时遇到了一些奇怪的行为:varcategories=['for','bar','steam'];for(varkeyincategories){console.log(key);}输出:012forEachmapfilterreduceindexOfend其中包括Array原型(prototype)函数,对吗?这绝对不是它应该工作的方式。这是为什么?顺便说一句,当将循环更改为for(varkey=0;key时它当然有效. 最佳答案 那是因为您可能正在使用

javascript - 遍历窗口对象中的所有项目

昨晚实在无聊,想了个小剧本。基本上我在想PHP与JavaScript相比有多少内置函数,然后我意识到我真的不知道JavaScript实际上有多少函数。我想写一个脚本来查看窗口对象,包括对象内部的每个对象等等。我编写了脚本并且成功了(在较小的对象上进行了尝试)。但是,我的问题是JavaScript不允许我遍历整个Windows对象。我试过:for(varkeyinwindow){console.log(key);}我也试过:vara=Object.create(window);for(varkeyina){console.log(key);}这两段代码都给我:topwindowlocat

javascript - 对于遍历数组不返回正确的结果

我在使用for循环后将变量与数组:$scope.object.id和$scope.groepen.id与if语句进行比较。如果$scope.object.id与$scope.groepen.id的ID之一完全相同,那么它应该使$scope的索引.overlap为真。我正在使用另一个if检查来查看$scope.overlap是否为真。如果$scope.overlap的一个元素为真,它将使$scope.bestaan​​d为真。否则它应该使它为假。for(vari=0;i我的控制台日志显示$scope.overlap实际上显示了正确的值(因此,如果没有相同的值,则所有索引都是错误的)。$s

javascript - Protractor、Jasmine 和在第一次失败时停止测试

在尝试弄清楚如何使某些jasmineexpect语句依赖于先前的expect语句时,我发现在Jasmine2.3.0之前,没有办法。(参见Stopjasminetestafterfirstexpectfails)但是,Jasmine2.3.0添加了一个选项stopSpecOnExpectationFailure,当设置为true时将在第一次失败时停止测试。对此前景感到兴奋,我修改了我的conf.js以包含以下选项:/**conf.js*/exports.config={framework:'jasmine',specs:['search-spec.js'],useAllAngular2

javascript - 是否可以一次为元素的所有事件分配阻止默认值?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:jQuery-HowcanIbindalleventsonaDOMelement?想象一下,如果我们想让一些元素完全不可交互。当然,我们可以为点击事件绑定(bind)一个阻止默认值,如下所示:$('form*').bind('click',function(event){event.preventDefault();});但这只是一个事件,还有更多事件,例如悬停、聚焦、selectstart等等。我们可以在一行中指定它们,例如“clickfocushoverdblclickblurselectstart”,但

javascript - 继续检查条件而不是一次性检查 jquery/js

我想实现的是当鼠标没有悬停在menu3上时,系统会不断检查aboutMenu是否悬停,如果是,则提示'h',否则提示'nh'。问题是当鼠标离开menu3时只检查一次,如何解决这个问题?谢谢。$('#menu3').live('mouseout',function(){$("#aboutMenu").hover(function(){$(this).data("hovered",true);},function(){$(this).data("hovered",false);});if($("#aboutMenu").data("hovered")){alert('h');}else{a

Javascript:如何通过异步递归树遍历控制流?

我需要在树上递归,以使用异步操作在特定节点上执行操作。如何控制流,以便在完成后可以访问节点?这是一个示例情况:data={name:"deven",children:[{name:"andrew"},{name:"donovan"},{name:"james",children:[{name:"donatello"},{name:"dan"}]},{name:"jimmy",children:[{name:"mike"},{name:"dank"}]}]};我有一个函数,目标是遍历树并大写以'd'开头的所有名称。之后,我想将树传递给另一个函数以做更多的工作(可能删除所有以“a”开头的名

javascript - 我应该在每个文件中都需要一个模块还是需要一次并将其作为参数传递?

假设我有50个模块,每个模块都需要Underscore库。像那样加载Underscore50次是否更好://amodulevar_=require('underscore');或者最好从主文件传递它://app.jsvar_=require('underscore');require('./app_modules/module1.js')(_);//passing_asargumentrequire('./app_modules/module2.js')(_);//passing_asargumentrequire('./app_modules/module3.js')(_);//pa

javascript - 第一次请求加载json数据并显示在首页

我是第一次使用Vue.js。我需要序列化django的对象views.pydefarticles(request):model=News.objects.all()#gettingNewsobjectslistmodelSerialize=serializers.serialize('json',News.objects.all())random_generator=random.randint(1,News.objects.count())context={'models':modelSerialize,'title':'Articles','num_of_objects':News

javascript - 嵌套归约函数/递归/函数式编程/树遍历

我经常遇到这样的情况:我最终嵌套了很多reduce函数来深入研究一个对象。很难提取逻辑,因为在底部我需要访问沿途遍历的各种键。本质上,我正在寻找一种更好的方法来实现以下目标:import{curry}from'lodash/fp'import{fromJS}from'immutable'constreduce=curry((fn,acc,it)=>it.reduce(fn,acc))describe('reduceNested',()=>{constinput=fromJS({a1:{b1:{c1:{d1:{e1:'one',e2:'two',e3:'three'},d2:{e1:'o