JavaScript函数(未完)

JavaScript函数

函数本身就是对象。总的来说,函数在JavaScript中可以,

  1. 被赋值一个变量
  2. 被赋值为对象的属性
  3. 作为参数被传入别的函数
  4. 作为函数的结果被返回
  5. 用字面量来创建

1 函数对象

常规是通过字面量来创建函数:

function add(x,y){return x+y;}
or
var add = function(x,y){return x+y;}

关键字function会调用Function来new一个对象,并将参数表和函数体传递给Function的构造函数。

2 函数作用域

JavaScript中变量的作用域为函数体内有效,而无块作用域。

function func(){ for(var i=0;i<array.length;i++ ){ //do something } //此时i任然有效,i=array.length print(i); //array.length }

词法作用域

JavaScript作用域是词法作用域,其作用于是在定义时(词法分析时)就确定下来,而并不是在执行是确定。

    var str="global";
    function scopeTest(){
        print(str);
        var str="local";
        print(str);
    }

scopeTest();

运行结果却是:

undefined
local

因为在函数scopeTest的定义中,预先访问了未声明的变量str,然后才对他初始化,所以第一个print(str)为undefined错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值