数组、函数对象

一、数组:

什么是数组?,简单的说就是,在一个·变量上存储多个值。

怎么设置数组?

[ ] 中括号,这个形式的表示的是数组;

声明方式:

第一种: 

var   arr =  [ ]

第二种:

var  newArr = new Array ( )

这里的newArr是数组名,这个可以随便变,但是其他的地方不要改,特别是new 后的Array不能改。改的话就不能解析出你设置的是个啥了。(注意: Array  数组的意思)

数组的赋值:

1、

字面量的形式存值   ---  如果存储多个值 那么中间以 逗号隔开 就可以了   最后一个值 后边是不加逗号的  : var  arr1 = [100,200,300]

2、

 var  arr2 = new Array(10)   如果小括号里 写了一个值  那么这个值  是修改了 数组里边的个数的

 var  arr3 = new Array(10,20)   如果是写了两个值以以上  那么这些值 都会存储到数组里

 注意 : 数组里边的值   数据类型 没有任何要求  随便写  都可以的

数组里边的值的使用?

数组名 [索引号]     

其中, 索引一定是从0 开始的


    <script>

         var  arr = [10,20,30]

         console.log(arr);

        //  现在 要用 20 这个值 

        //  从数组里边 怎么取值

        // 数组名[索引号]
        console.log(arr[1]);
        console.log(arr[0]);
        console.log(arr[2]);


    </script>

数组里边 要获取 值的个数  有一个属性  叫做 length

数组里边 最后一个值的 索引号    固定的是  数组的length值  -1

数组里边 第一个 值的 索引号 永远是 0

  var  arr = [11,22,44,55,10,30,60,58,95,66,77,89]

         console.log(arr);

        //  求数组里边 所有数的和     617

        // 1、得到数组里边的 每一个值

            // 数组名[索引号]   索引号 是从0 开始 依次 + 1 

            var  sum = 0

            for(var i = 0 ; i < arr.length ; i++){

                sum += arr[i]

            }

            console.log(sum);

给数组里边添加值

1  、 正常添加

  数组名[数组名.length]

2 、 不正常添加

数组名[索引号]

 索引号有对应的值  这个时候 不会添加  会覆盖

索引号没有对应的值   undefined  可能会给 数组里边 添加一些 empty


    <script>


         var  arr = [44,55,77,88,66,33]

        //  console.log(arr[3]);

        //  console.log(arr[arr.length - 1]);



        //  console.log(arr[arr.length]);

        // arr[0] = 123

        // console.log(arr);

        // arr[arr.length] = 456

        // console.log(arr);

        // console.log(arr.length);

        arr[10] = 100

        console.log(arr);


    </script>

二、函数:

什么是一个函数 :

就是把一部分相同的代码操作  放在一个容器里边去   放进去的代码是不执行的   让他执行 他才执行的。

语法结构:就是用函数自己的 关键词 来得到一个 函数   function

1、常用结构:

 function 函数名()

{

 函数调用的时候执行的代 

}

2、这里也是使用 var 关键字 来声明一个变量  然后把一个函数 当成值 赋值给这个变量

语法结构是(这个了解即可) :

var   fun = function(){ }   匿名函数

 注意 :  函数里边的代码 不会自己执行  必须要调用一下 才会执行

调用函数 :

调用一个函数   首先要拿到这个函数的名称

函数名()  这就是函数的调用

函数的参数:

形式参数

写在声明函数的小括号里的 就是形式参数    形参

function fn( ) { }    fn后边的小括号 就是 声明函数的小括号

而且是不需要声明的形参

实际参数

写在函数调用的 小括号里的  就是 实际参数   实参

fn()  写在这个小括号里的 就是 实际参数

 function  fuc(a,b,c){}
            
            fuc(10,20,30)
 <script>

        // 函数的参数 问题 :


            function  fun (a,b,c){


                console.log(a);
                console.log(b);
                console.log(c);

            }

            // fun() //  没有传递实参  那么形式参数的值 是啥?   undefined

            // fun(10,20,30) //  传递了 对应的实参   10   20  30   

            //   因为 实参  是 形参 匹配的时候   要  一一匹配      一一对应匹配

            // fun(100,200) 

            // 当实参的 个数 小于 形参的个数    对应的形参 是可以匹配值的  剩余形参就没有值  是 undefined

            fun(100,200,300,400)

            //  当实参的 个数 多余 形参的 时候  对应的形参 都是有值的 但是最后多余的 实参 是没有人要的


    </script>

arguments  函数里边自带的一个属性

            作用 :  是获取  传递过来的所有实参  并且放在一个 数组里的

 <!-- 

        arguments  函数里边自带的一个属性

            作用 :  是获取  传递过来的所有实参  并且放在一个 数组里的

            注意 :  arguments 直接使用 不能放在 声明函数的小括号里  放在小括号里 变成形参了 就只能接收一个值了

     -->

     <script>

        function fuc (){

            console.log(arguments);

            // var  sum = 0

            // for (var i = 0; i < arguments.length; i++) {
                
            //     sum +=arguments[i]
                
            // }

            // console.log(sum);

        }

        fuc(10,20,30,40,50,60)


     </script>

 

 

函数里边有一个return

        1、  给调用者 返回一个值

        2、  函数里边 如果遇到了 return  那么 return 后边的代码(函数里边的代码)是不执行的


    <!-- 

        函数是有一个 return 的 


     -->

     <script>


        // var  arr = [1,4,2,5,6,3]

        // console.log(arr.reverse());


        function  reverse(arr){   // 点完以后 这个reverse  去做这个菜
            var  newArr = []

            for(var i =arr.length - 1;i>=0 ; i--){


                newArr[newArr.length] = arr[i]
            }
            // 这里的时候 证明 菜 已经做好了   这里需要用到一个 return newArr
            return  newArr
            // console.log(newArr);
            
            console.log(123456798);

        }
        console.log(reverse([10,20,30,40,50]));   //  这里 调用函数的时候 就类似于  点菜了
        // reverse([10,20,30,40,50]);   //  这里 调用函数的时候 就类似于  点菜了
        console.log(789789);
        //   现在要去饭店 点菜   
        //   点完菜   要去做 
     </script>

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

天晴了小甜筒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值