functional-programming
全部标签 我在IE中看到一些奇怪的行为,试图通过function.apply()调用另一个页面中的函数。这是一个简单的测试用例:test1.html:varopened=null;functionapplyNone(){opened.testFunc.apply(opened);}functionapplyArgs(){opened.testFunc.apply(opened,["appliedarray"]);}functioncall(){opened.testFunc("calleddirectly");}functionremoteApply(){opened.testApply(["u
对于Javascript应用程序,我需要能够让用户保存对象的状态。这涉及保存一组以前动态创建或通过GUI创建的自定义函数,并在以后加载这些存储的函数。本质上,我需要序列化和反序列化函数。现在我通过使用Function对象的.toString()方法实现序列化部分:func.toString().replace('"','\"').replace(/(\r)/g,'').replace(/(\n)/g,'').replace(/(\t)/g,'')这给了我这样美丽的“序列化”函数(注意该函数未命名):"function(someParameter){this.someFunctionNa
这样的代码会产生一个错误:if(hr>t1[0]||(hr==t1[0]&&min=>t1[1])&&hr错误:SyntaxError:无效的arrow-function参数(arrow-function周围的括号可能有帮助)这是什么意思,它是如何发生的?Google搜索此错误毫无用处。编辑:似乎是使用=>=而不是=引起的。但我仍然很好奇为什么错误是这样表述的,以及箭头函数应该是什么。编辑2.首先,我没有意识到这实际上可能是特定于浏览器的问题。另外,我没有意识到现在人们在浏览器上下文之外的其他地方使用JS。所以,为了说明这一点,我的浏览器是MozillaFirefox25.0.1。
zeptojs文档here当我使用$().animate函数时抛出如下错误:TypeError:$(...).animate不是函数而我使用的版本是页面提供的。 最佳答案 $(...).animate在zeptofx模块中。它不再在zepto的基本主要发行版中!http://zeptojs.com/#modules 关于javascript-错误:ZeptojsAnimateIsNotAFunction,我们在StackOverflow上找到一个类似的问题:
我使用ramda制作了这段代码,以检查数组B中是否存在数组A的任何值,假设它们是平面数组。varhasAtLeastOneTruthValue=ramda.contains(true);varalpha=[1,2,3]varbeta=[4,1,7];varvalueOfArrayInArray=ramda.map(function(a_v){returnramda.contains(a_v,beta);});console.log(hasAtLeastOneTruthValue(valueOfArrayInArray(alpha)));我不喜欢的是硬编码betainsidevalueO
我正在尝试进入响应式编程。我一直使用map、filter和reduce等数组函数,并且喜欢我可以在不创建状态的情况下进行数组操作。作为练习,我尝试在不引入状态变量的情况下使用RxJS创建一个可过滤列表。最后它应该像这样工作:我知道如何使用简单的JavaScript或AngularJS/ReactJS来完成此操作,但我正在尝试仅使用RxJS并且不创建状态变量来完成此操作:varlist=['John','Marie','Max','Eduard','Collin'];Rx.Observable.fromEvent(document.querySelector('#filter'),'ke
自从我编写OCaml代码以来已经有一段时间了,我遇到了这个听起来很简单但我无法解决的问题:编写一个函数,该函数接受一个函数f,该函数具有可变数量的参数并返回一个bool值(即f的类型为'a->'b->'c->...->bool)并返回一个函数g表示f的否定(即(fx1x2..xn)==not(gx1x2..xn)对于所有有效参数集。它受到以下代码块的启发,该代码块解决了Javascript中的问题:functionnegate(func){returnfunction(){return!func.apply(null,arguments);};}(来自http://eloquentja
在DouglasCrockford的书中,他将递归函数写为:varwalk_the_DOM=functionwalk(node,func){func(node);node=node.firstChild;while(node){walk(node,func);node=node.nextSibling;}}我从未见过定义为varfoo=functionbar(){...}的函数-我总是看到声明的右侧是匿名的:varfoo=function(){...}声明右侧的名称walk的唯一目的是缩短walk_the_DOM的调用吗?它们似乎成为相同功能的不同名称。也许我误解了这段代码的工作原理。
我正在阅读有关函数声明与函数表达式的内容,但我无法弄清楚以下语句的含义:FunctionDeclarationsoccurasstandaloneconstructsandcannotbenestedwithinnon-functionblocks.请有人用一个例子来解释作者的意思,准确地说:“......不能嵌套在非功能block中”。链接是:https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/ 最佳答案
请原谅我,我会尽力描述我正在寻找的东西。我没有它的名字,所以它变得更加困难。查看库,例如Folktale和monet.js,我喜欢能够使用map链接操作而无需空检查或if语句,例如使用也许,要么,任务。我想知道是否存在类似的构造来解决以下问题:我有初步意见。我想构建一个对输入进行操作的函数链。每个函数可能返回也可能不返回结果。如果函数没有返回结果,则调用链中的下一个函数。一旦函数返回结果,就忽略链中的其余函数(类似于map在Maybe.Nothing上ping一个函数)返回结果。换句话说,我正在寻找类似于Maybe的东西,它包含一个值并将函数映射到Just但忽略映射到Nothing的函