201506250923_《Javascript权威指南(第六版)——检查是否为函数、不完全函数、记忆的函数 》(P193-200)

一.  检查是否为函数。

function isFunction(x) {

    return Object.prototype.toString.call(x) === "[object Function]";

  };

   function square(n) {

    return n*n;

  };

alert(isFunction(square));  //true

一.  函数式编程

1. 使用函数处理数组

例如:

function fn() {//some code...};  elemnets.reduce(fn);

2. 高阶函数——操作函数的函数

例如:

function not(f) {

  return function() {

  var result = f.apply(this,arguments);

  return !result

 }

};

var even = function(x) {return x%2 === 0};

var odd = not(even);

alert([1,1,3,5,7,9].every(odd));  //true  判断是否为奇数

3. 不完全函数

4. 记忆

例如:

//带有记忆能力的函数

function memorize(f) {

  var cache = {};

  return function() {

    var key = arguments.length + Array.prototype.join.call(arguments,",");

   if(key in cache) return cache[key];

   else return cache[key] = f.apply(this,arguments);

  };

 };

//最大公约数算法函数

function zdgys(a,b) {

  var t; if(a < b){

t = b,b = a, a = t;

};

while(b != 0){

t = b,b = a%b, a = t;

    };

  return a;

};

var instance = memorize(zdgys);

alert(instance(27,54));  //27

5.

时间: 2024-08-28 22:28:08

201506250923_《Javascript权威指南(第六版)——检查是否为函数、不完全函数、记忆的函数 》(P193-200)的相关文章

JS 语言核心(JavaScript权威指南第六版)(阅读笔记)

前言: 对于程序员,学习是无止境的,知识淘换非常快,能够快速稳固掌握一门新技术,是一个程序员应该具备的素质.这里将分享本人一点点不成熟的心得. 了解一门语言,了解它的概念非常重要,但是一些优秀的设计思想需要细心和大量实践才能慢慢参悟,在这之前需要做的是能够运用它来开发,那么了解一些基础特性非常有必要,通常这些特性是需要经验积累,从各种坑中累计出来,但是还有一种看似很笨却很有效的学习方法.那就是将别人的经验记录下来,有事没事都拿出来看看,集合开发中的经验,这会非常有效. 调试工具 firebug

《JavaScript权威指南(第六版)》.(美)David.Flanagan.中文扫描版.pdf

下载地址:网盘下载 内容简介  · · · · · · 本书是程序员学习核心JavaScript语言和由Web浏览器定义的javascript API的指南和综合参考手册. 第6版涵盖HTML 5和ECMAScript 5.很多章节完全重写,以便与时俱进,紧跟当今的最佳Web开发实践.本书新增章节描述了jQuery和服务器端JavaScript. 本书适合那些希望学习Web编程语言的初.中级程序员和希望精通JavaScript的JavaScript程序员阅读. 作者简介  · · · · · ·

Note | javascript权威指南[第六版] 第2章:词法结构

语法结构规定了诸如变量名是什么样的.怎么写注释,以及程序语句之间如何分隔等规则.本章用很短的篇幅来介绍JavaScript的词法结构. 2.1.字符集 JavaScript程序是用Unicode字符集编写的.Unicode是ASCII和Latin-1的超集,并支持地球上几乎所有在用的语言. 2.1.1.区分大小写   JavaScript是区分大小写的语言.也就是说,关键字.变量.函数名和所有的标识符(identifier)都必须采取一致的大小写形式.但需要注意的是,HTML并不区分大小写(尽管

javascript权威指南第六版学习

第二章 语法结构 2.1 字符集 什么是字符集?各种字符集什么关系?unicode,utf-8是什么关系? 字符(Character)是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等.字符集(Characterset)是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII字符集.GB2312字符集.BIG5字符集.GB18030字符集.Unicode字符集等.http://baike.sogou.com/v291629.htm 各种字符集的出

【读书笔记--cookie】JavaScript权威指南 第六版

遇到一些问题需要用cookie处理,正好读了一下犀牛书关于cookie的介绍,整理了一些笔记. cookie是指web浏览器存储的少量数据,同时它是与具体的web页面或者站点相关的. cookie数据会自动在web浏览器和web服务器之间传输,因此服务器端脚本就可以读.写存储在客户端的cookie值.在JavaScript中,cookie用于保存状态以及能够为web浏览器提供一种身份识别机制. 但是在JavaScript中使用cookie不会采用任何加密机制,因此它们是不安全的.但是,通过htt

读JavaScript权威指南(第六版)笔记(第五章)

语句 表达式在JavaScript中是短语,那么语句就是JavaScript整句或命令.用句号作结尾来分隔语句.表达式计算出一个值,但语句用来执行以使某件事发生. 5.2复合语句和空语句 复合语句:用花括号把多条语句括起来形成符合语句. { x = Math.PI; cx = Math.cos(x); ................... } // 第一,语句块的结尾不需要分号 //第二,语句块中的行都有缩进 空语句:包含0条语句的语句.空语句就一个分号  //  : JavaScript解释

第六章 对象-javaScript权威指南第六版(三)

6.3 删除内容 delete运算符可以删除对象的属性. delete运算符只能删除自有属性,不能删除继承属性. delete表达式删除成功或没有任何副作用时,它返回true. 6.4 检测属性 用in\hasOwnProperty\propertyIsEnumberable\!== in 对于对象的自有属性或继承属性中包含有这个属性的返回true. hasOwnProperty方法用来检测 给定的名字是否是对象的自有属性 propertyIsEnumerable()是hasOwnPropert

又发现《JavaScript权威指南 第六版》一处错误

pdf版本,英文版第158页, var isArray = Function.isArray || function(o) { return typeof o === "object" && Object.prototype.toString.call(o) === "[object Array]"; }; return typeof o === "object" && Object.prototype.toStr

我发现的《JavaScript权威指南 第六版》一书中的错误

错误一: 错误二: 错误三: join 等方法是定义在Array.prototype上的,所以文中出现Array.join()是不对的.

JavaScript权威指南(第六版).中文版 网盘下载

下载地址:https://u18103887.ctfile.com/fs/18103887-335537335 下载地址:https://u18103887.ctfile.com/fs/18103887-335537335 原文地址:https://www.cnblogs.com/wuyb123/p/10367522.html