文档章节

JS函数定义特性摘录

一点灵犀
 一点灵犀
发布于 2016/06/15 19:16
字数 213
阅读 13
收藏 1

ECMA语法定义

FunctionDeclaration :
function Identifier ( FormalParameterList opt ){ FunctionBody }

FunctionExpression :
function Identifier opt ( FormalParameterList opt ){ FunctionBody }

一些有趣的特性

  • 函数声明总是先于其它表达式解析。下面这个可以正确弹出alert框:
alert(fn());

function fn() {
  return 'Hello world!';
}
  • 后定义的函数声明会覆盖先定义的函数表达式(但不完全可靠)
var foo = function(){ return 1; };
if (true) {
  function foo(){ return 2; }
}
foo();
  • 函数表达式的标识只在该函数内部可见
var f = function foo(){
  return typeof foo; // "foo" 只在内部可见
};
// `foo` 在外部不可见
typeof foo; // "undefined"
f(); // "function"
  • 在IE8及以下,这就是个雷区,详见参考链接的JScript bugs部分。

参考链接:http://kangax.github.io/nfe/

© 著作权归作者所有

共有 人打赏支持
一点灵犀

一点灵犀

粉丝 10
博文 53
码字总数 15777
作品 1
深圳
程序员
私信 提问
《javascript语言精粹》读书笔记(三)

从现在起要加快点速度了,书中其实有很多知识对于我来说已经很熟悉了,在此我就简单摘录一下,当然如果非常重要的知识(我认为的,可能有失偏颇),我会写的详细点,可能还会加入我的理解。下...

倪闯
2015/03/13
0
0
JavaScript作用域 - 学习Javascript的基石之一(转)

1.作用域 JavaScript的作用域与C、Java等语言不同,它不是以花括号包围的块级作用域,这个特性经常被大多数人忽视。例如下面代码,在大多数类C的语言中会出现变量未定义的错误,但在JavaScr...

顽Shi
2014/02/13
0
0
使用SeaJS实现模块化JavaScript开发

前言 SeaJS是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制。与jQuery等JavaScript框架不同,SeaJS不会扩展封装语言特性,而只是实现JavaScrip...

green001
2014/04/01
0
2
用通俗易懂的语言介绍JavaScript原型

原型(prototype)是每个JavaScript开发人员必须理解的基本概念,本文的目标是通俗而又详细地解释JavaScript的原型。如果你读完这篇博文以后还是不理解JavaScript的原型,请将你的问题写在下...

gsbhzh
2014/10/29
0
0
《JavaScript 权威指南》读书笔记 1 - 简介

原文:https://keelii.github.io/2016/06/16/javascript-definitive-guide-note-0/ 第一章 主要介绍 JavaScript 的大概情况、基本语法。之前没有 JavaScript 基础的看不懂也没关系,后续章节...

keelii
2016/06/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

mybatis批量操作sql配置

在写批量sql操作时,遇到执行报错: <foreach collection="list" item="item" index="index" separator=";"> update t_xxx set column1=#{item.column1} where id= #{item.id} </foreach> 分......

lar555
20分钟前
2
0
L2TP VPN客户端配置

打开网络设置-->选择VPN-->添加VPN链接 配置完毕,打开更改适配器选项 右键-->属性 选中安全---允许使用安全协议,确定保存后连接vpn即可

阿伦哥-
24分钟前
1
0
缘“熟”而起——《乡土中国》读书笔记3600字

缘“熟”而起——《乡土中国》读书笔记3600字: 发现电脑里藏了几篇本科大一大二写的读书笔记。回想当初阅读这些社会科学书籍的时候,自己尽力又时而深感难以读懂的心境仿佛重现。但如今细想...

原创小博客
27分钟前
1
0
SpringBoot与pageHelper版本问题

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.6.RELEASE</version></parent> <dependency>......

WALK_MAN
31分钟前
3
0
PHP开发支付宝微信个人免签支付接口实例

这是一个PHP开发支付宝微信个人免签支付接口实例,支付宝微信即时到帐接口,使用原生支付宝即时到帐接口修改而来,即可实现多接口收款功能,开发只需要按照支付宝即时到帐接口开发即可,减少...

sucaihuo
36分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部