函数
来源:互联网 发布:编程入门书籍下载 编辑:程序博客网 时间:2024/04/29 23:52
函数在js中也是一种数据类型,属于function类型
三种定义方式:
1.function语句的形式:
function test1(){
alert('1111');
}
2.函数直接量的形式:
var test2 = function(){
alert('2222');
3.构造函数的形式:}
三种方式的比较: function语句形式函数直接量形式构造函数形式名称有名匿名匿名性质静态静态动态解析时机优先解析顺序解析顺序解析作用域函数的作用域函数的作用域顶级作用域var test3 = new Function('a','b','return a+b')
最后一个参数是test3的函数体,前面的参数是test3的参数。
解析顺序问题:
alert(f1()); // 3//alert(f2()); //不能执行function f1(){return 1;} alert(f1()); // 3alert(f2); // undefined 说明f2先声明后赋值的var f2 = function(){return 2;}alert(f2); // functionalert(f2()); // 2function f1(){return 3;}var f2 = new Function('return 4;')alert(f2()); //4
f1优先解析,所以第一个alert()可以执行,而且前面的f1被后面的f1覆盖。只要函数名一样,后解析的就会覆盖前面的。
f2都是声明式定义,顺序解析,赋值之后才能调用f2()。
作用域问题:
var k = 1;function f1(){var k = 2;//function f2(){return k;} // 2 函数作用域//var f2 = function(){return k;} // 2 函数作用域var f2 = new Function('return k;'); // 1 全局作用域alert(f2());}f1();
0 0
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 函数
- 又见回文
- hdu5373
- 在CodeWarrior中指定堆栈大小及堆栈指针
- SQLite集成与用法
- gflags调试工具的使用
- 函数
- Database Initialization Strategies in Code-First & Seed Data(sample role)
- 华为OJ(挑7)
- 安卓基础
- Calendar中的一些方法
- extern “C”详细介绍
- Javascript识别各种浏览器、渲染引擎、系统平台(操作系统|移动设备|游戏系统)
- 用Git 进行分布式代码管理
- Yii2.0中文开发向导——查询条件Where全解析