js声明和表达式

原创 2016年08月30日 23:15:10

js声明和表达式

1.定义

函数声明:function 函数名(){}
函数表达式: function 函数名(可写可不写的)(){}   函数名写的属于命名函数表达式,不写的属于匿名函数表达式。

function aaa(){} : 函数声明
var a = function aaa(){} : 命名函数表达式
var a = function(){}  : 匿名函数表达式
以下都属于表达式
(function aaa(){})
~function aaa(){} 
-function aaa(){}
+function aaa(){}
!function aaa(){}

2.区别

a、 函数表达式可以直接后面加括号执行,而函数声明是不可以的。
b、 函数声明可以被提前解析出来的。
function aaa(){ alert(1); }();//浏览器报错
var a = function aaa(){ alert(1); }();//1
~function aaa(){ alert(1) }(); //1


if(true){
function aaa(){
alert(1);
}
}
else{
function aaa(){
alert(2);
}
}

aaa();//火狐、谷歌1;ie11以下是2,ie11是1。这是因为函数声明可以被提前解析出来的,浏览器不同解析方式不同。


if(true){
var a = function aaa(){
alert(1);
}
}
else{
var a = function aaa(){
alert(2);
}
}
a();//结果都是1,这种情况使用表达式


var a = function aaa(){
alert(1);
alert(typeof aaa);  //内部是可以找到的
}


a();  //1   function
aaa();  //外面是找不到的,报错




(function aaa(){ alert(1) })
aaa();//报错

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

js中函数声明和函数表达式,立即执行函数理解(笔记)

javascript中函数声明和函数表达式//下述两种声明方式有什么不同function foo(){}; var bar = function foo(){};  简单来说,ECMAScript是通...

js函数前加!(函数表达式和声明函数)

一般看JQuery插件里的写法是这样的 (function($) { //... })(jQuery); 今天看到bootstrap的javascript组件是这样写的 !...

JS函数-函数声明和函数表达式之间的恩怨

“函数声明”和“函数表达式”其实说白了 就是定义函数的方式 函数声明: function 函数名(){.....} 通过上面方式定义的函数就是函数声明   函数表达式:通过函数表达式定义函数的方式比较...

(javascript)浅析js函数表达式和函数声明以及闭包

1.函数 定义函数的方法有两种,一种是函数声明,另一种是函数表达式. //函数声明 function f1(){}//函数表达式 var f1=function(){}这两者的区别在于:函数声明会在所...

Js中的函数类型及声明和表达式

Js中比较有趣的恐怕就是函数类型了:function value(){ return value; } alert(typeof value); //“function” typeof是一个获得...

JS创建函数:函数声明和函数表达式

JavaScript 中需要创建函数的话,有两种方法:函数声明、函数表达式,各自写法如下: // 方法一:函数声明 function foo() {} // ...

Kotlin学习之-5.11 对象表达式和声明

Kotlin学习之-5.11 对象表达式和声明有时候我们需要创建一个类的实例,并且扩展或者修改其中的一两个方法,但不想显式地声明一个子类。Java中是使用内部类来处理这种情况,Kotlin则使用对象表...

C#集合篇,在业务背景下(***产品升级管理):依赖注入,变量声明,三元表达式,常用字符串相关操作方法,ADO.NET,EF机制,T4模板自动生成实体类,ref变量巧用,属性实际运用,唯一性验证

QQ:1187362408 欢迎技术交流和学习 关于系统产品升级报告管理,业务需求: TODO: 1,升级报告管理:依据各县区制定升级报告(关联sAreaCode,给每个地区观看具体升级报告信息...

javascript函数定义表达式和函数声明的区别

在javascript中,函数有两种定义写法,函数定义表达式和函数声明,其例子分别如下所示:var test = function(x){    return x;  } function test(...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)