一、前言

    在前天的内容我们提到了有关于JS的一些语言结构,这些语言结构都是语法中最为基本的内容必须予以熟记并可以灵活掌握。

二、引入

    在今天内容中我们将讨论两个很重要的概念,数组与函数。

三、重点内容

    ㈠ 数组

      即数据的有序列表,存储的是一组数据。该数据的类型可以是任意类型,而数组中的元素可以随时的动态添加。那我们下面就讨论一下如何构建数组。

       ①  使用构造函数构建数组

// 第一种,用构造函数的方式创建 数组
var arr = new Array();// 创建了一个空数组,长度为0
// 数组就是数据的有序列表,这个顺序是按编号来的,默认以0开始,这个编号 叫做数组的索引或是下标
arr[0] = 100;
arr[1] = 99;
arr[2] = 98;
arr[10]=96;
console.log(arr.length);
console.log(arr);// 直接打印数组 ,就可以看到数组里面的数据
alert(arr);

      ② 使用字面量的方式创建数组

 var arr = [100,98,96,99,93,95,97,69,89,58,87];
//console.log(arr[0]);
//console.log(arr[arr.length-1]); for(var i=0;i<arr.length;i++){
console.log(arr[i] +"===="+i);
}
//console.log(arr.length);

      需要注意的是:① 因为JS是弱类型动态语言,所以里面的元素可以随时动态的添加的。数组的长度会随着里面数据的变化而变化。

                ② 和其他语言一样数组的下标也是与数组的长度相差一,在有些需求中需要注意。

    ㈡ 函数

      即代码复用的一种机制或是封装某种功能的代码段。简单的说就是为了去除冗余或者垃圾代码的一种机制。

      ① 函数的定义:

          function 函数名([参数列表]){

          函数体(都是可执行的或是要执行的代码);

         }

        ② 函数的三要素:

              函数名:一般运用驼峰命名法来书写一个有意义的动词名字

                参数:

                  形参:在函数定义时用于占位的参数。

                  实参:调用函数时实际传入的值

                  返回值:函数结束时返回给我们的结果。

                

             注意:在三要素之中参数是不必须有的。返回值是每个函数都有的,如果没有明确的返回值的话,默认是undefined。

        ③ 形参和实参的关系:

         定义好了函数之后,在函数调用的时候,会将函数的实参复制一份传到函数定义时的形参里面,会和之前的一一对应起来,如果实参和形参的个数不一样的时候,会先按之前的分配。实参和形参的个数是可以不一样的。

          注意:当实参数和形参数不一样时就会对结果有所影响,这个时候我们运用短路运算的方式来避免结果的出错。

            

var i= 0;
function getSum(a,b,c){ // 在函数定义的时候,使用的参数叫做形参,起占位置的作用
// arguments
a = a || 0;
b = b || 0;
c = c || 0;
console.log(a+b+c);
} getSum(10,20);//在函数真正的调用的时候,传入的数据,才是实参

      ④ return的用法

        在函数当中,return一般是用于返回函数当中的数据,如果return后面跟着数据,则后面的数据是整个函数的返回值,程序运行到这里的时候,会先将返回值返回出去,然后立即跳出当前函数,后面的代码不再执行。如果return 后面没有数据的话,程序运行到return处,则表示直接立即跳出当前函数,后面的代码都不执行。

四、总结

      函数和数组作为重点必须可以熟练掌握,多次训练。

        

JavaScript 基础第三天的更多相关文章

  1. JavaScript基础(三)

    十三.JS中的面向对象 创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 ...

  2. JavaScript基础学习(三)—数组

    一.数组简介     JavaScript数组的每一项都可以保存任何类型的数据,也就是说数组的第一个位置保存字符串,第二个位置可以保存数值,第三个位置可以保存对象,而且数组的大小是可以动态调整的,即可 ...

  3. 前端开发之JavaScript基础篇三

    主要内容: 1.创建对象的几种方式 2.JavaScript内置对象 3.JavaScript错误--Throw.Try 和 Catch 4.JavaScript 表单验证 一.创建对象的几种方式 1 ...

  4. javascript基础(三)运算

    原文http://pij.robinqu.me/ 递增递减操作符(包括前置和后置).一元正负符号操作符 这些操作符适用于任何数据类型的值,针对不同类型的值,该操作符遵循以下规则(经过对比发现,其规则与 ...

  5. 回归JavaScript基础(三)

    主题:JavaScript基本概念. 任何语言的核心必然会描述这门语言最基本的工作原理.这部分内容对我们来说,读起来很乏味,甚至会产生困意,但这部分内容却是重要的!我有幸拜读<JavaScrip ...

  6. javascript基础(三): 操作DOM对象(重点)

    DOM:文档对象模型 核心 浏览器网页就是一个Dom树形结构! 更新:更新Dom节点 遍历Dom节点:得到Dom节点 删除:删除一个Dom节点 添加:添加一个新的节点 要操作一个Dom节点,就必须要先 ...

  7. javascript基础拾遗(三)

    1.map数组映射操作 function add(x) { return x+1 } var nums = [1,3,5,7,9] result = nums.map(add) console.log ...

  8. JavaScript基础三

    1.10 关于DOM的事件操作 1.10.1 JavaScript的组成 JavaScript基础分为三个部分: ECMAScript:JavaScript的语法标准.包括变量.表达式.运算符.函数. ...

  9. JavaScript基础:DOM操作详解

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 前言 JavaScript的组成 JavaScript基础分为三个部分: ...

随机推荐

  1. Linux 流程控制语句 if else、for、while、until

    1. 单分支if条件语句 书写方式1: if [ 条件判断式 ]; then 执行程序代码 fi 书写方式2: if [ 条件判断式 ] then 执行程序代码 fi 举例: if [ $rate - ...

  2. 这有一个flag

    1.并查集[1224] 2.最小生成树?? 3.topsort(好洋气): 4.归并排序[1438]: 5.差分约束系统: 6.A*算法找k短路 7.scanf: 8.搜索[P1198]华容道: 9. ...

  3. 数据库SQL

    mySQL的安装和简单的命令 show -uroot -p 进入mySQL show databases 查看所有库 show tables 查看所有表 use 表名 进入表 create datab ...

  4. Matlab(3) -- 编写M文件(函数)

    转自:http://blog.csdn.net/misskissc/article/details/8178089 matlab的命令编辑窗口(Command Window)界面主要是用来调用系统命令 ...

  5. linux环境搭建

    gcc编译安装 解压下载的gcc包:tar -xxx gcc-xxxx.xxx.xx 下载安装gcc依赖库:./contrib/download_prerequisites configure一个Ma ...

  6. [译]关于iOS和OS X废弃的API你需要知道的一切

    原文: Everything You Need to Know about iOS and OS X Deprecated APIs 如你所知,已废弃(Deprecated)的API指的是那些已经过时 ...

  7. js判断字符串中是否含有指定汉语

    核心代码: function haveChinese(str,c){ if(escape(str).indexOf(escape(c))!=-1){ retrun true; } return fal ...

  8. javascript里的封装

    用javascript闭包的特性,可以模拟实现私有变量.私有方法. var myObject = =(function(){ var privateValue; function privateMet ...

  9. Microsoft.Office.Interop.Word.Document.Open returns null on Windows Server 2008 R2

    系统终于通过UAT,可以上线了.一遍测下来还行,可是为什么word转PDF就是不行呢?查了一下log,原来在wordApp.Documents.Open来打开生产的word文件的时候,返回一直是空.之 ...

  10. 编译 wxWidgets-3.0.2 on Mac OS X Yosemite 出错?!的解决方法

    tar -zxf wxWidgets-3.0.2.tar.bz2   //解压 //三部走 ./configure ./make 提示webKit出错 原因:有人偷懒,没试编译就发布了. 解决:找到. ...