js问题之this指向问题

        1.全局里面this默认指向window  

        2.在局部里,将函数作为属性值追加到一个对象,这里的this就是函数对象

        3.前面有对象  this就指向谁   没有默认指向window

        4.在严格模式下this指向underfined       "use strict"为严格模式

        5. 构造函数就是用来创建对象   创建的对象称为实例化对象

            构造函数中的this指向我们创建的实例对象

        6.函数默认调用方法有三种

                                        一种通过 函数名字()

                                        一种是要通过函数名字.apply()  

                                        一种通过 函数名字.call();

                                          apply和call方可以改变this指向

                                        apply方法不仅可以调用函数  也可以设置this指向

                                       apply方法传入实参 就必须设置第二个参数

                                        第一个参数设置this指向

                                        第二个参数是一个数组的形式 数据传入数组中

                                        call方法不仅可以调用函数  也可以设置this指向

                                                call方法传入实参 就必须设置第二个参数

                                                    第一个参数设置this指向

                                                    call方法的第一个参数之后按照列表的形式传入实参    将数据依次传入

                                                            第二个参数是一个数组的形式 数据传入数组中

        7.   

             显示绑定的三个方法 apply call bind

            引出bind函数  可以改变this指向  第二个参数跟的是列表

            且产生一个新的函数   这个函数称为BF

            根据这个绑定的优先级      显示绑定的优先级 高于默认绑定

            所有当调用foo函数时   实际让fn.bind(obj)这个 整体调用

            可以让this指向obj   调用fn函数时  最后输出obj对象

8.         定时器里面this指向window

9一般高阶函数  

            forEach函数的第二个参数可以设置this指向

            如果不设置默认指向window对象

            一个函数需要另一个函数作为参数   那么这个函数称为高阶函数

10.箭头函数声明一个函数   小括号书写形参  大括号是执行的函数体;箭头函数没有this

11.

 1.声明式声明一个函数

        function foo() {};

        2.赋值式声明一个函数

        var fn = function() {};

       3. 构造函数声明一个函数

        var fun = new Function();

       12.箭头函数:

         return满足的条件的数据给了函数调用者 需要声明一个中间商  接收函数调用者

        箭头函数参数有一个  小括号可以省略

        箭头函数如果是执行一行代码  大括号省略 连同return

       13.高阶函数map

                    map() 方法创建一个新数组;
                     这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成
                     map()会形成一个新的数组  映射   针对于每一项进行处理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值