[Javascipt] Immediately-Invoker 2
Now the people at Poplar Puzzles would like you to treat an array of functions like a Queue, passing the result of each function into the next until the Queue is empty. They’ve sent you the new queue of functions, and a “simple directive”:
In a variable called
applyAndEmpty, build and store a function that takes in a single number and any Queue of functions as inputs and then applies the Queue’s functions in order to the input number, where the results of each function become the next function’s input. Additionally, the queue should be empty following your application. Lastly, because we are just that freaking awesome, any loops you use must only be for-loops. MWAHAHA. Then call your new function using the number 2 and the providedpuzzlersqueue as initial inputs, and alert the result.- PuZzLe MaSTeRs
The new Queue of functions to use is below.
var puzzlers = [
function ( a ) { return 8*a - 10; },
function ( a ) { return (a-3) * (a-3) * (a-3); },
function ( a ) { return a * a + 4; },
function ( a ) { return a % 5; }
];
We’ve provided the queue and the start value for you.
var puzzlers = [
function ( a ) { return 8*a - 10; },
function ( a ) { return (a-3) * (a-3) * (a-3); },
function ( a ) { return a * a + 4; },
function ( a ) { return a % 5; }
];
var start = 2;
var applyAndEmpty = function(num){
puzzlers.map(function(func){
var res = func(num);
num = res;
alert(res);
return res;
});
};
applyAndEmpty(start);
function buildNow(){
  return (function(){
    alert("RUN NOW");
  })(); // <<---- We add '()', so that as soon as this function return, it will Immediately invoke.
}
buildNow();
function buildWhenICall(){
  return function(){
    alert("You call me!");
  };
}
buildWhenICall()(); // <<--- Or we can do something like that
// The same as
//var run = buildWhenICall();
//run();
[Javascipt] Immediately-Invoker 2的更多相关文章
- javascipt的【函数表达式】
		函数表达式 在编程时,我们可以看到不管是什么类库,jquery也好,zepto也好,都会用到大量的命名函数和匿名函数表达式,本节点就是为了弄懂为何会有这些函数表达式,以及在什么情况下会使用到这些表达式 ... 
- Spring远程调用技术<3>-Spring的HTTP Invoker
		前面提到RMI使用java标准的对象序列化机制,但是很难穿透防火墙. 另一方面,Hessian和Burlap能很好地穿透防火墙,但是使用私有的对象序列化机制. Spring提供的http invke ... 
- [Android Tips] 23. How to fail/stop Gradle task immediately if some conditions are not met
		throw new GradleException("conditions are not met") 参考 How to fail/stop task immediately i ... 
- How to force the UI to refresh immediately(WPF)
		Question 0 Sign in to vote Folks, In my application, when the user hits "Submit" button, I ... 
- 关于JavaScipt对象的基本知识
		关于JavaScipt对象的基本知识 JavaScript是运用“对象化编程”的,又叫“面向对象编程”的.所谓“对象化编程”,意义是把JavaScript能涉及的领域划分成各种对象,对象后面还连续划分 ... 
- ZOJ 1808 Immediately Decodable
		字典树较简单题,无需维护标记,注意细节即可. 代码: #include <iostream> #include <cstdio> #include <cstring> ... 
- JBOSS /invoker/JMXInvokerServlet 利用工具 .
		链接: http://pan.baidu.com/s/1F8bMI 密码: 1h2r 工具使用说明 1. 查看系统名称 java -jar jboss_exploit_fat.jar -i http: ... 
- 服务调用方案(Spring Http Invoker) - 我们到底能走多远系列(40)
		我们到底能走多远系列(40) 扯淡: 判断是否加可以效力于这家公司,一个很好的判断是,接触下这公司工作几年的员工,了解下生活工作状态,这就是你几年后的状态,如果满意就可以考虑加入了. 主题: 场景: ... 
- HDU 3923 Invoker(polya定理+逆元)
		Invoker Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 122768/62768 K (Java/Others)Total Su ... 
- Spring Remoting by HTTP Invoker Example--reference
		Spring provides its own implementation of remoting service known as HttpInvoker. It can be used for ... 
随机推荐
- 【Naive Splay Template】
			写小作业的时候重新复习了一下splay 只支持插入,删除,查k大,查节点数.没有迭代器. T类型需要重载==和<,要调用拷贝构造函数. template<class T> class ... 
- 【Codeforces 949D】Shake It! 【动态规划】
			参考: http://blog.csdn.net/gjghfd/article/details/77824901 所求的是满足条件的图中“不同构”的数量,意味着操作的顺序是可以忽略的.考虑若干次操作后 ... 
- Codeforces Round #298 (Div. 2) A. Exam 构造
			A. Exam Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/534/problem/A Des ... 
- hihocoder #1015 KMP
			#include<stdio.h> #include<iostream> #include<math.h> #include<string.h> usi ... 
- 使用命令行编译和运行 c、Java和python程序
			集成开发环境已经非常方便,从编写程序到执行程序看到结果,让我们不用关心中间的过程.但是使用原始的.命令的方式来将程序编译运行有的时候可能有些用,比如写个简答的程序,或者是身边没有集成工具的时候. C语 ... 
- Git_删除文件
			在Git中,删除也是一个修改操作,我们实战一下,先添加一个新文件test.txt到Git并且提交: $ git add test.txt $ git commit -m "add test. ... 
- 你了解for循环吗
			大家学什么语言都会学for循环 可是你真的会用吗 通常写法都是 var arr=arr[1,2,3,4]; for(var i=0;i<arr.length;i++){ console.log( ... 
- PCI DSS合规建设ASV扫描介绍
			最近查一些Nessus.Nexpose漏洞扫描工具相关资料,工具介绍都会提到一些审计功能,其中最常见的就是PCI DSS合规性审计.从网上找到一篇介绍较详尽的文章,与大家分享. 原文摘自:http:/ ... 
- Tasker to proximity screen on
			in my previous entry, i posed an idea how to use the built-in proximity sensor to turn the screen of ... 
- XBee Level Shifting
			http://www.faludi.com/bwsn/xbee-level-shifting/ The XBee communication (RX/TX) pins definitely opera ... 
