JavaScript高级

1.函数
    函数就是将具有一定功能的一段JS代码的封装,可以在程序的多个地方被反复调用。
    1)定义函数
        格式一:
            function 函数名([形参列表]){
                函数体;
                [return [<表达式>];]
            }
        格式二:
            var 变量名 = function([形参列表]){
                函数体;
                [return [<表达式>];]
            }
        格式三:
            ;(function([形参列表]){
                函数体;
                [return [<表达式>];]
            })([实参列表]);
            上面的函数叫立即执行函数表达式(IIFE),它会自动调用自身,不被在其它地方被调用,一般用于JS库或JS插件的封装或闭包处理。
    2)函数调用
        函数名([实参列表]);

        Tips:
            函数不会自动执行(IIFE(立即执行函数表达式)除外),必须通过调用才能执行。
    3)return
        函数可以通过return返回结果,如果return没有返回结果,表示结束函数的调用,且返回调用处。
    4)arguments对象
        返回实参列表的一个伪数组。
        一般用在不确定传过来的实参的个数的情况下。
2.对象(object)
    对象,其实就是一种类型,即引用类型。用于将数据和功能组织在一起。
    对象由属性和方法组成,通常用键值对定义。
    1)对象定义
        a)new构建
            new Object([参数]);
        b)字面量定义
            var obj = {
                key: value,// 属性
                fn: function(){ // 方法
                    ...
                }
            }
    2)对象的引用
        a)对象名.属性名
          对象名.方法名([实参列表])
        b)对象名[属性名]
3.数组(Array)
    数组将一组数据组合到一起,并存入到一个变量中,数组是有序排列的,占用一段连续的内存空间。
    一个数组可以存储不同类型的数据。
    1)定义数组
        a.new
            new Array([值列表])
        b.字面量创建
            var arr = [值列表]
    2)获取数组元素值
        数组名[下标] // 下标可以是一个数值型常量,也可以是一个表达式或函数或变量
    3)遍历数组
        一维数组用一个循环实现;二维数组必须用双重循环实现(先行后列)。
        a.for 
          eg: var arr1=[1,2,3];
                    for(var i=0;i<arr1.length;i++){
                      console.log(arr1[i]);         
                                             }
        b.for...in      // 推荐写法
            eg:    var arr2 =[1,2,3];
                   for(var i in arr2){console.log(arr2[i])}
        c.forEach()
           eg:    var arr3=[1,2,3]
                  arr3.foreach =(function(i)){
                        console.log(i);
                    })
    4)数组的属性和方法
        a.length属性
            获取数组的长度。
        b.方法
            i)push()
                向数组中添加数组到数组最后。
            ii)pop()
                删除数组最后一个元素。
            iii)unshift()
                向数组头部添加数据。
            iv)shift()
                删除数组第一元素。
            v)concat()
                将两个或多个数组组合成一个数组。
            vi)reverse()
                对数组进行倒序处理。
            vii)join()
                将数组转换为字符串。
            viii)splice()
                删除、修改或向数组中添加数据。
4.Function类型
    Function是一个用来构建函数的类(构造函数)。

    函数内部属性
        在函数内部,有两个特殊的对象:arguments和this。
            callee:
                arguments是一个类数组对象,包含着传入函数中的所有参数,主要用途是保存函数参数。
                但这个对象还有一个名叫callee的属性,该属性是一个指针,指向拥有这个arguments对象的函数。
                也即是说可以通过arguments.callee调用函数自身,一般用于函数的递归调用。

                函数自己调用自己叫函数的递归调用。

            this指针对象
                在全局中this指向的是window(在JS中没有global这个全局对象,而JS的全局对象是window);
                在函数中this指向的是这个函数执行所操作的当前对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文哲爱学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值