JavaScript系列之基础篇

Posted coderkey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript系列之基础篇相关的知识,希望对你有一定的参考价值。

七,数组导读

1,什么是数组

1.1,数组的概念

(1)含义:

数组是指一组数据的集合,其中的每个数据被称之为元素,在数组中可以存放任意类型的元素。数组是一种将一组数据储存在单个变量名下的优雅方式。

2,数组的创建方式

2.1,利用 new 创建数组

(1)语法:

  var  数组名 = new  Array( );
  var  arr = new  Array( );    //创建一个新的空数组

2.2,利用数组字面量创建数组 [ ]

(1)语法:

1,使用数组字面量方式创建空的数组。
var 数组名 = [ ];
2,使用数组字面量方式创建带初始化值的数组。
var 数组名 = ['小白' , 666,true,'小兰'];

(2)注意:

数组里面的数据一定用逗号分隔。数组里面的数据称之为数组元素。

3,获取数组元素

3.1,数组的索引

(1)含义:

索引(下标):用来访问数组元素的序号(数组下标从0开始)。

(2)语法:

数组名[索引号]

(3)例如:

  //定义数组
  var arrNum = [1,  2,  3];
  //获取数组中的第n个元素
  console.log(arrNum[0]);    // 1
  console.log(arrNum[1]);    // 2
  console.log(arrNum[2]);    // 3

4,遍历数组

4.1,数组的遍历

(1)含义:

就是把数组中的每个元素从头到尾都访问一次。

(2)例如:

  var  arr  = ['a',  'b',  'c'];
   for (var i = 0;  i < 3;  i++)  {
        console.log(arr[i]);    //'a'  'b'  'c'
    }

4.2,获取数组元素的个数

(1)语法:

数组名.length

(2)例如:

  var  arr  = ['a',  'b',  'c'];
  for (var i = 0;  i < arr.length;  i++)  {
        console.log(arr[i]);    //'a'  'b'  'c'
   }

5,数组中新增元素

5.1,通过修改 length 长度新增数组元素

(1)含义:

可以通过修改length长度来实现数组扩容的目的。

(2)方法:

  var arr = ['a',  'b',  'c'];
  console.log(arr.length);   //‘a'  'b'  'c'
  arr.length = 5;    //把数组的长度修改为了5,此时里面有5个元素。
  console.log(arr);    //‘a'  'b'  'c'  empty*2
  console.log(arr[3]);      //undefined
  console.log(arr[4]);     //undefined

(3)注意:

索引号3,4只声明没有给值,默认值就是 undefined

5.2,通过修改数组索引号新增数组元素

(1)含义:

可以通过修改数组索引号的方式追加数组元素。

(2)方法:

  var arr = ['a',  'b',  'c'];
  arr[3] = 'd';
  console.log(arr);   //‘a'  'b'  'c'  'd'
  arr[0] = 'q';     //这里替代原来的数组元素
  console.log(arr);   //‘q'  'b'  'c'  'd' 

八,函数导读

1,函数的概念

1.1,为什么需要函数

(1)含义:

在jS里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用。虽然for循环语句也能实现一些简单的重复操作,但是比较具有局限性,此时我们就可以使用JS中的函数。
函数:就是封装了一段可被重要调用执行的代码块。通过此代码块可以实现大量代码的重复使用。

2,函数的使用

2.1,声明函数

(1)语法:

  function  函数名( )  {
                //函数体
  }

2.2,调用函数

(1)语法:

函数名( );

(2)注意:

声明函数本身并不会执行代码,只有调用函数时才会执行函数体代码。

(3)例如:

   //声明函数
  function  getSum( )  {
           var  sum  =  0;
           for  (var  i  =  1;  i  <=  100;  i++)  {
                   sum  +=  i;
            }
           console.log(sum);
     }
    //调用函数
   getSum( );   //5050

3,函数的参数

3.1,形参和实参

(1)含义:

在声明函数的时,可以传递的参数称之为形参,而在调用函数时,传递的参数称之为实参。

(2)语法:

  //声明函数
  function  函数名(形参1,形参2…)   {
              //函数体   
    }
   //调用函数
   函数名(实参1,实参2…);     

(3)例如:

   function  getSum(sum)  {
            console.log(sum);    // 2
     }
   getSum(2);  

(4)注意:

1,实参个数等于形参个数,输出正确结果。
2,实参个数多于形参个数,只取到形参的个数。
3,实参个数少于形参个数,多的形参定义为undefined,最终结果为NaN
4,在js中,形参的默认值是undefined

4,函数的返回值 return

4.1,return 语句

(1)语法:

  function  函数名( )  {
                return   需要返回的结果;
  }
  
   函数名( );//调用函数

(2)例如:

    //1,利用函数,求两个数的最大值
   function  getMax(num1,num2)  {
         return  num1  >  num2  ?  num1  :  num2;
    }
    var   a    =    getMax(1, 3);  
    console.log(a);      // 3
    var   b   =   getMax(11, 3); 
    console.log(b);      // 11
    //2,利用函数,求数组中的最大数值
   function  getArrMax(arr)  {
         var  max  =  arr[0];
            for  (var  i  =  1;   i  <=  arr.length;  i++)  {
                    if  (arr[i]  >  max)  {
                        max   =   arr[i];
                    }
             }
             return   max;
     }
    var   re  =  getArrMax([5, 2, 99, 101, 67, 77]);  
    console.log(re);      // 101

(3)注意:

1,最终结果需要return返回给函数调用者。
2,return 只能返回一个值。如果用逗号隔开多个值,以最后一个值为准。
3,如果函数有return,则返回return后面的值,如果函数没有return,则返回undefined
4,return 后面的代码不会被执行的。

5,arguments的使用

5.1,arguments 对象

(1)含义:

当形参不确定有多少个实参传递的时候,可以用arguments来获取,在javascript中, arguments实际上它是当前函数的一个内置对象,所有函数都内置了一个arguments对象, arguments对象中存储了传递的所有实参。

(2)例如:

  function  fn( )  {
    console.log(arguments);   //里面存储了所有传递过来的实参  得到伪数组 [1,  2,  3]
    console.log(arguments.length);    // 3
    console.log(arguments[2]);    //3
          for(var  i  =  0; i  <  arguments.length;  i++)  {
              console.log(arguments[i]);    //1  2  3
           }
     }
     fn(1,  2,  3);
   //利用函数求任意个数的最大值
   function  getMax( )  {               //arguments = [1,  2,  3]
                 var  max  =  arguments[0];
                 for (var  i  =  1;   i  <  arguments.length;   i++)   {
                         if (arguments[i]   >  max)  {
                               max  =  arguments[i];
                          }
                 }
               return   max;
    } 
   console.log(getMax(1,  2,  3));     // 3
   console.log(getMax(1,  2,  3,  4,  5));    // 5
   console.log(getMax(11,  2,  34,  444,  5,  100));    //444

5.2,函数可以调用另一个函数

(1)含义:

因为每个函数都是独立的代码块,用于完成特殊任务,因此经常会用到函数相互调用的情况。

(2)例如:

   function  fn1( )  {
       console.log(111);
       fn2( );
       console.log('fn1');
   }
   function  fn2( )  {
      console.log(222);
      console.log('fn2');
   }
   fn1( );
   //结果为111  222  fn2  fn1

5.3,函数的两种声明方式

(1)语法:

   1,利用函数关键字定义函数(命名函数)
      function   函数名( )   {
               //函数体
         }
       函数名( ); 
   2,函数表达式(匿名函数)
     var  变量名  =  function( )   { };

(2)例如:

 var  fun  =  function( )  {
           console.log('我是函数表达式');
   }
    fun( );

(3)注意:

1,fun是变量名,不是函数名。
2,函数表达式里面存的是函数。
3,函数表达式也可以进行传递参数。


以上是关于JavaScript系列之基础篇的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript系列之基础篇

JavaScript系列之基础篇

JavaScript系列之基础篇

JavaScript系列之基础篇

JavaScript学习系列之内存模型篇

JavaScript系列之ES6篇