函数内部的arguments

一 arguments

1.arguments 它只能在函数内部使用

2.arguments  是一个伪数组,(实质上是一个对象,像数组而已)

3.它的使用与数组一样的,用于动态接受实参

unction fn() {//不用传实参进来  无形参函数
            var sum = 0
            for (var i = 0; i < arguments.length; i++) {
                sum += arguments[i]
            }
            return sum//返回sum结果
        }
        console.log(fn(10, 20, 30));
function fn2() {
            if (arguments.length == 1) {
                return "你好"
            } else if (arguments.length == 2) {
                return '大家好'
            }
        }
        console.log(fn2(1, 2));

二 作用域

1.作用域,作用的范围,分为全局作用域和局部作用域

2.函数内部使用的是局部作用域(全局变量)

3.函数外部使用的是全局作用域(局部变量)

4,全局变量能在函数内部使用(调用) 也能在函数外部使用(调用)

三 作用域链

1.作用域链就是函数自身没有局部变量,需要往外层函数寻找 ,如果外层函数有 就直接调用

如果外层函数没有又继续往全局找 如果全局有就直接调用,全局没有的话就报错

2.作用域链就是

找变量的过程

var a=1
function fn(){
    //var a=10
    function fn2(){
    //var a =20
        console.log(a)
    }
        fn2()//1
}
fn()

四 函数的相互调用

1.局部函数能调用全局函数

2.兄弟函数能调用同级函数

3.全局函数不能调用局部函数

 function fn1() {
            console.log("AAA");
        }
        function fn2() {
            console.log("BBB");
            //fn1() 能调用兄弟函数
            function fn3() {
                fn1()//可以调用全局函数
            }
            fn3()
        }
        fn2()

五 通过事件驱动编程

1.js是典型的事件驱动编程

2.通过事件执行函数,事件简述一种交互行为

 <button id="btn">点我</button>
    <script>
        //1.通过id获取页面上的按钮
        var obtn=document.getElementById("btn")
        //2.通过按钮绑定点击事件,通过事件去驱动(执行)函数
        obtn.onclick=function(){
            console.log("我被执行了....");
        }
    </script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值