原文地址:http://tutorialzine.com/2014/08/what-does-this-function-do/

下面列出十八个JS function,看你知道这些函数是干嘛用的,你能答对几个,废话不多说,直接上方法,

1, 亢龙有悔(当年乔帮主在树林中使出此一招,直接将两长老的打狗棒吸走,何等威风),下面这个函数就是既来之则安之,你要来真的我就给你一脚,你要来假的,我二话不说,直接使出亢龙有悔,答案已经见分晓啦

function whatDoesItDo(val){
 
return val ? 1 : 2;
 
}
2,飞龙在天(当年郭靖傻哥哥学了三天才学会七公教的这招,至于威力自不必说)郭靖人傻了点可还是分得清青红皂白
function whatDoesItDo(param){
 
return { blue:"#0000ff", green:"#00ff00", red:"#ff0000" }[param];
 
}
3,见龙在田(这招是郭靖当年为救蓉儿使出的一招)郭靖虽是能分得清,青红皂白,可耐蓉儿这一知己,为了妹子,什么都可以干,这就是红了眼,见下面函数即知,什么都是红的
function whatDoesItDo(color){
 
if (color !== 'blue' || color !== 'green') {
color = 'red';
}
 
return color;
}
4,潜龙勿用(事情虽然发展势头较好,但比较弱小,所以应该小心谨慎,不可轻动)郭大侠使出这招仍处处留心,就像在这个世界中寻找你的另一半一样,郭靖找到了蓉儿,我只找到了我自己,什么意思呢,就是我是个光棍,再高端点就是哥是个王老五钻石的,啥都不说了,都是泪,我的另一半呢,看代码,答案就在上面
function whatDoesItDo(arr){
 
return arr.filter(function(elem, pos) {
return arr.indexOf(elem) == pos;
});
 
};
5,震惊百里,易经中的51卦,也是郭靖当年对付欧阳锋的一招,欧阳锋这老贼,拼了命也就想为自己的儿子谋点好处,可是歪人不想正道,可惜了最后走火入魔,这招乃是十八掌中威力很大的一招,大有包罗一切的含义https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce_clone   直接上代码,看完上面的秘籍,下面的答案自然而然知道了
function whatDoesItDo(arr){
 
return arr.reduce(function(s, n){ return s + n; }, 0);
 
}
6,或跃在渊,龙有时会在渊底,有时会飞出来,真正牛X的人应该像Dragon一样,即使带着个卡西欧也能像待OMG一样有饭,此是闲扯淡,这招不仅郭靖在使用,我们中国武术大家无不对此招怀有敬意,king of Kongfu Bruce Lee对这招尤为喜欢,记得死亡游戏中在最后的罗马校场,以当时的场面,唐龙已经处于下风,可是就在此时他使出了这招或跃在渊,虚虚实实,实实虚虚,将自己的能力化为2倍,3倍,正所谓以无法为有法以无限为有限,答案自在上面,且看代码
function whatDoesItDo(arr){
 
return arr.map( function(x){ return x*2; });
 
}
7,突如其来, 郭靖听得蓉儿呼叫,精神忽振,左掌拍出,此是降龙十八掌的十一招,这招的突然从下面的代码中可见一斑,至于答案,天机不可泄露,想讨论找我,
function whatDoesItDo(mood){
 
return mood && "I like this" || "I don't like this";
 
}
8,双龙取水,郭靖刚从小船首爬上甲板,眼见势急,已自不及抢上相救,双掌齐发,一招「双龙取水」,猛击欧阳锋后腰。这招打得欧阳锋胆也战心也惊,这在我们的代码中如何体现,常见的多线程可是吸取了此招的精髓,只可惜js是单线程的也不能阻止其发挥应有的功效,分久必合,合久必分,自古以来就有此理,且看下面代码:
function whatDoesItDo(str){
 
return str.split('').reverse().join('')
 
}
 
今天到此为止,欲知后事如何且看下回分解。。。。我是Rhino,转载注明出处

Javascript Function()中的降龙十八掌的更多相关文章

  1. 译文:javascript function中的this

    个人理解+google翻译.如有错误,请留言指正.原文来自MDN: this 简介 Javascript中一个函数的this关键字的行为相对其它语言有些不同.在严格模式和非严格模式间也有区别. 在大多 ...

  2. JavaScript jQuery 中定义数组与操作及jquery数组操作

    首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...

  3. javascript函数中变量重名

    <script type="text/javascript"> function fun(a){ console.log(a); // function var a=1 ...

  4. 关于<a href='javascript:function()'>

    <a href='javascript:function()'> 这样写是为了让这个链接不要链接到新页面转而执行一段js代码.和onclick能起到同样的效果,一般来说,如果要调用脚本还是 ...

  5. JavaScript ES7 中使用 async/await 解决回调函数嵌套问题

    原文链接:http://aisk.me/using-async-await-to-avoid-callback-hell/ JavaScript 中最蛋疼的事情莫过于回调函数嵌套问题.以往在浏览器中, ...

  6. [记录] javascript 对象中使用setTimeout

    参考:Javascript对象中关于setTimeout和setInterval的this介绍 使用最后一个方法终于弄好了,简直了,在对象中使用setTimeout原来是这样的 做的是分钟倒计时,倒数 ...

  7. JavaScript function函数种类(转)

    转自:http://www.cnblogs.com/polk6/p/3284839.html JavaScript function函数种类 本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通 ...

  8. JavaScript function函数种类介绍

    JavaScript function函数种类介绍 本篇主要介绍普通函数.匿名函数.闭包函数 1.普通函数介绍 1.1 示例 ? 1 2 3 function ShowName(name) {     ...

  9. 第一百节,JavaScript表达式中的运算符

    JavaScript表达式中的运算符 学习要点: 1.什么是表达式 2.一元运算符 3.算术运算符 4.关系运算符 5.逻辑运算符 6.*位运算符 7.赋值运算符 8.其他运算符 9.运算符优先级 E ...

随机推荐

  1. 动态加载HTML后使用query修改标签样式

    下面的IMG 标签的宽度从后台返回是10PX,加载完毕后,修改成100PX,注意:拼接的代码在 body标签之后,或则直接在HTML外面增加也可以 <html> <head> ...

  2. php中数组遍历改值

    <?php $arr = array(100, 99, 88, 77, 55, 66); //方法1 foreach ($arr as &$v) { $v = 2; } print_r( ...

  3. singleCall单来源调用解析及实现

    定义: 单来源调用指一个类的生成工作只能由特定类来执行. eg李宁牌鞋子只能由李宁专卖店生产 这个问题归结起来,也就是说在工厂模式中,指定的产品类只能通过具体的特定工厂类来生成,而不能自己new出来或 ...

  4. java集合-ArrayList

    一.ArrayList 概述 ArrayList 是实现 List 接口的动态数组,所谓动态就是它的大小是可变的.实现了所有可选列表操作,并允许包括 null 在内的所有元素.除了实现 List 接口 ...

  5. net user命令集合详解

    net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user: ...

  6. 【HTML5】浅析HTML5应用程序缓存(ApplicationCache)

    一.为什么需要Web应用程序缓存 在移动互联网时代,设备终端位置不再固定,依赖无线信号,网络的可靠性变得降低,比如坐在火车上,过了一个隧道(15分钟),便无法访问网站,这对于web的伤害是很大的    ...

  7. 关于mapcontrol和pagelayoutcontrol切换时闪退

    今天遇到一个很奇怪的的现象,在tabcontrol里切换到pagelayout时,程序会闪退,试了下之前的程序,没有问题,去网上搜了一下,也没人有这样的问题,然后就开始实验,添加一个控件,运行一次,最 ...

  8. 《The Linux Command Line》 读书笔记03 ls命令与长格式输出解释 文件权限

    ls命令与长格式输出解释 文件权限 ls命令 ls 命令用于列出目录内容,不带参数时列出当前工作目录的内容,也可以指定目标目录(可以指定多个),列出目标目录下的内容. ls命令的参数 ls -l 长格 ...

  9. 把应用push到/system/app上面后,出现java.lang.UnsatisfiedLinkError的问题

    把应用push到/system/app下面后,加载.so库的问题 01-01 00:07:08.186: E/MessageQueue-JNI(2683): java.lang.Unsatisfied ...

  10. The Genymotion Virtual device could not obtain an IP address解决办法

    打开Genymotion运行虚拟机提示如下错误: The Genymotion Virtual device could not obtain an IP address.For an unknown ...