函数(Functions)

问题:

  1. 有多少种函数声明的方式?

  2. 不同函数类型如何影响上下文的变量对象?

知识点:

函数

  1. 在ECMAScript中,有三中函数类型:函数声明,函数表达式和函数构造器创建的函数。

---函数声明FD

  1. 有一个特定的名称;

  2. 在源码中的位置:要么处于程序级(Program level),要么处于其它函数的主体(FunctionBody)内;(只有这两个位置可以声明

  3. 进入执行上下文阶段创建;

  4. 影响变量对象(上下文的VO);

  5. 以 function exampleFunc() { ... } 形式创建。

---函数表达式FE

  1. 在源码中须出现在表达式的位置

  2. 有可选的名称;

  3. 代码执行阶段创建

  4. 以 var exampleFunc = function() { ... } 形式创建;

  5. 作用:

  • 不污染变量对象不影响变量对象

  • 通过创建封装的闭包隐藏辅助性数据

该领域涉及到立即调用的知识点,即圆括号。(见《立即调用与自执行》笔记~)

  • 为什么不污染变量对象?先看代码:-- (补充于2015.08.25 21:26)

    213233_3OtS_437855.png

  • 函数表达式不存在变量对象内(在内存中),所以我们一般结合能影响变量对象的变量(初始化为undefined),完成对其进行访问,如下:

    213312_szZg_437855.png

     命名函数表达式NFE:

  1. 出现在递归调用中;

  2. 解析器在代码执行阶段遇到命名函数表达式时,在FE创建之前,它创建了辅助的特定对象

  3. 特定对象被添加到当前作用域链的最前端

  4. 特定对象以FE的名字作为唯一属性,属性值引用到了FE上。

  5. 执行完毕后删除特殊对象。

    例子如下:

    025952_qq2y_437855.png

---函数构造器创建的函数 (不大明白,待补充)

  1. 通过函数构造器 Function( ... ) 创建的函数,[[Scope]]属性只包含全局对象;

  2. Function构造器既可以用new关键字也可以不用;

-----------

函数其他特点

  1. 可以作为参数,称为函数式参数

  2. 接受函数式参数(函数的参数)的函数称为高阶函数(或函数式函数或偏数理或操作符);

  3. 作为返回值的函数称为带函数值的函数

  4. 以上3个被称作第一类函数(一般说第一类对象),在ECMAScript中,在ECMAScript中,所有函数都是第一类对象

  5. 接受自己作为参数的函数称为自应用函数

  6. 以自己为返回值的函数称为自复制函数





转载于:https://my.oschina.net/Karon/blog/495895

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当前版本:1.4 软件语言:中文 软件类别:手机安全 软件大小:2.05 MB 适用固件:4.0及更高固件 内置广告:没有广告 适用平台:Android Theftie 从你丢失、被盗、放错地方的手机中锁定、定位、追踪、拯救数据,并抓拍嫌疑人的样貌。 Theftie 其中的一个伟大的功能是它能在你手机丢失时发送你的数据到Google 云端硬盘。 它是如何运作的 ► 防范:侦测对你手机未经授权的访问并立即锁定设备,拍下入侵者的样貌并发送到你的邮箱里。 ► 捕获:即时获得嫌疑人的样貌和设备所在地,让你轻松地和持有你的设备的人沟通。 ► 拯救数据:在Google 云端硬盘里取回你丢失设备中的短信、照片或文档。 功能 ☆ 当入侵者尝试输入错误的解锁码时自动锁定 ☆ 当入侵者尝试输入错误的解锁码时自动拍下入侵者的样貌 ☆ 寻找手机:在PC上轻松地获取你设备地所在地的地图 ☆ 丢失模式:锁定设备、开始追踪所在地、拍摄照片 ☆ 拯救数据:万一丢失设备时上传应用程序 / 文件夹到你的Google 云端硬盘中 ☆ 通过让手机响铃 / 震动来寻找手机 ☆ 通过GPS定位来寻找手机 ☆ 通过网页 / 短信来远程控制 ☆ 通过通行码保护来防止未授权的应用程序更改 ☆ 接收SIM卡或电话号码更换的通知 ☆ 无电量消耗 ☆ 多设备支持 高级 ☆ 远程锁定设备 ☆ 远程抹除SD卡 ☆ 远程抹除手机数据 ☆ 阻止应用程序被卸载 ☆ 隐藏应用程序图标 远程指令: - 定位 - 发送消息 - 锁定设备 - 拯救数据 - 拨打号码 - 发送短信 - 锁定 - 切换丢失模式

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值