博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
201506231015_《Javascript权威指南(第六版)——作为命名空间的函数、闭包、 》(P181-193)...
阅读量:5244 次
发布时间:2019-06-14

本文共 849 字,大约阅读时间需要 2 分钟。

1. 作为命名空间的函数。 形如: var someFn = (function(){var a = 0;return function f(){// ...};}());

2. 闭包。

  闭包内无法直接访问外部函数的参数,除非将外部的实参列给一个变量存储以来。例如:var outerArguments = arguments;

3. 函数的属性,方法,构造函数

  a. 

      arguments.length;  (期望传入的实参个数)

      arguments.callee.lenth;(实际传入的实参个数)

  b. prototype属性

    构造函数会从原型对象上继承属性和方法;

  c. call()和apply()

     第一个参数是要“要调用函数的母对象”

     形如:函数.call(对象);  函数.apply(对象);

4. bind();——将函数绑定至整个对象;(返回一个函数对象)

  例如:

  function square(x) {return x*x}; var obj = {x : 2}; var newObj = square.bind(obj,obj.x); console.log(newObj());   //4  注意括号,因      为“square.bind(obj,obj.x);” 是个function类型!!

 

5. toString();

6. Function();构造函数

   a. 传入任意数量的字符串实参;

   b. var fn = new Function("x","y","return x + y;"); fn(2,3);  //5

   c. var scope = "global"; function constructFunction(){var scope = "local";return new Function("return scope")  //无法获取local};

 

7. 

 

 

 

转载于:https://www.cnblogs.com/beesky520/p/4595654.html

你可能感兴趣的文章
JS博客
查看>>
Docx转Doc操作(c#)
查看>>
一条简单的 SQL 执行超过 1000ms,纳尼?
查看>>
如何设置映射网络驱动器的具体步骤和方法
查看>>
ASP.NET WebApi 基于OAuth2.0实现Token签名认证
查看>>
283. Move Zeroes把零放在最后面
查看>>
Visual Studio Code 打开.py代码报Linter pylint is not installed解决办法
查看>>
Python 数据类型
查看>>
Google Guava学习笔记——简介
查看>>
历时八年,HTML5 标准终于完工了
查看>>
17.树的子结构
查看>>
D - Mike and strings
查看>>
C++:多维数组的动态分配(new)和释放(delete)
查看>>
c#基础学习(0806)之抽象类实现多态
查看>>
S5PV210根文件系统的制作(一)
查看>>
51NOD 1244 莫比乌斯函数之和
查看>>
[bzoj1923]外星千足虫[高斯消元]
查看>>
centos下同时启动多个tomcat
查看>>
slab分配器
查看>>
分析 PHP大马-php_mof SHELL
查看>>