数组

数组:一个有顺序,有长度的数据集合

作用:存储大量数据

一、数组的定义

1、构造函数法:使用构造函数法的时候,都会使用new关键字

var arr=new Array();

当长度为0 的时候,里面没有任何数据

2、字面量法:直接声明一个变量,赋值 [ ]

var arr= [ ] ;

二、数组赋值

1、构造函数:

var arr=new Array( ' abc' , 123 , true , false , undefined , null , 789);

这样的写法就是在往数组里面存储数据

如果直接是var arr=new Array(3);那就是声明数组的长度,不是存储数据

2、字面量法:

var arr= [ ‘ abc’ , 123 , true , false , undefined , null , 789 ];

3、通过索引赋值:

注意:数组的索引从0开始。

数组的索引要用 [ ] 访问。

数组里面可以存储任意类型的数据(弱类型)。

arr [0]=123;

arr[1]=’abc’;

4、数组的取值:

数组只能通过索引的方式取值,会使用到  [ ] 操作符

语法: 数组名 [ 索引 ];

var arr= [ ‘ abc’ , 123 , true , false , undefined , null , 789 ];

console.log(arr[0]);

console.log(arr[1]);

5、数组的遍历:将某个数据结构的所有数据全都访问一遍

函数

1、函数的作用

函数:就是一段可以在我们需要的时候重复使用代码块

解决的问题:让代码可以重复使用

2、函数的定义

1、function 关键字声明

格式:

function 函数名 ( 参数列表 ) {

函数体(返回值)

}

书写函数的过程:

1、 把想要重用的过程里,改变的东西放到参数列表里

2、 把想要重用的代码,放到函数体里面

3、 如果你希望函数执行之后,要得到一些东西,这些东西就是返回值,在return的后面加上你想要的东西

2、函数表达式

格式:

var 函数名 = function ( 参数列表 ){

函数体(返回值)

}

过程同上。

3、 函数命名

1、 可以使用字母、数字、下划线、$

2、 不能以数字开头

3、 不能使用关键字和保留字

4、区分大小写

5、建议要有意义 --  动词+名字结构

6、驼峰命名法

7、函数名不能重名,后面写的重名函数会把前面写的函数给覆盖掉

3、函数的参数

1、函数的形参

形式参数:在函数定义时,写在参数列表里的参数 -- 只是起到占据位置的作用,以便将来我们可以按照一定的规则传递参数。除此之外,还可以在函数的内部当成变量使用

2、函数的实参

实际参数:在函数被调用的时候实际传入函数内部的参数

在现阶段:

传参的时候,形参和实参是不会相互影响的,传参不会影响实际参数的值。或者说:函数在进行简单类型的数据传参的时候,形参和实参的值不会相互影响,简单类型的传参也不会影响实际参数的值

3、arguments对象

1、里面包含了所有在函数调用时传递进来的参数(在js中,函数的实参和形参的个数是可以不一致)

2、可以把arguments这玩意当成数组使用,有长度,可以使用索引访问所有在调用函数的时候传递进来的参数

3、只存在于函数的内部,也只能在函数内部使用,在函数之外是无法直接拿过来使用

一般来说,用来实现不定长度的参数个数的效果

4、函数的返回值

返回值:

当函数执行完毕之后,所得到的结果就是一个函数返回值

任意函数都有返回值

1、 在函数内部没有显式的写有return的时候,函数的返回值是undefined

2、 当函数内部有return,但是return后面没有跟着任何内容或者数据的时候,函数的返回值是undefined,并且return后面的代码不会执行

3、 当return后面跟着内容或者数据的时候,函数的返回值就return后面的东西

return关键字:这个关键字专门用来使函数执行之后具有返回值,并且结束函数执行用的

函数的四种形式:

1、无参无返回值

2、无参有返回值

3、有参无返回值

4、有参有返回值

5、函数的调用

函数名( 参数列表 );

6、匿名函数

就是没有名字的函数

格式:

function (参数列表) {

函数体

}

但是这个格式是不允许直接使用

用处:

1、函数表达式

2、还可以当成参数传递(回调函数)

7、自执行函数

函数可以自动的执行

格式:

(function (){

函数体

})();

JQuery就是使用自执行函数完成初始化的,所以一般在需要声明完毕就立刻执行的时候使用。

8、函数也是一种类型

通过typeof可以知道,函数也是一种数据类型,只要是数据类型,就可以成为参数传递

9、递归

概念:

函数自己内部调用自己本身

function fn(n) {
if (n == 1 || n == 2) {
return 1;
}
return fn(n - 1) + fn(n - 2);
}
console.log(fn(12));

JavaScript数组和函数的使用的更多相关文章

  1. JavaScript 数组操作函数--转载+格式整理

    JavaScript 数组操作函数(部分)--转载+格式整理 今天看了一篇文章,主要讲的对常用的Js操作函数:push,pop,join,shift,unshift,slice,splice,conc ...

  2. Javascript数组操作函数总结

    (1) shift  删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4, ...

  3. Javascript数组与函数初识

    1 - 数组 1.1 数组的概念 数组可以把一组相关的数据一起存放,并提供方便的访问(获取)方式. 数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素.数组是一种将一组数 ...

  4. JavaScript数组倒序函数reverse()

    左边为原数组,右边为array.reverse()的结果: 函数很简单,但是 var temp = ChartConfig.getMonthData(); $scope.monthList = tem ...

  5. JavaScript数组操作函数

    A: 购物车会有这样的情况,购物车是一个数组,每一个商品是一个对象,分别对应一个id,和一个num ,然后改变商品的时候需要和购物车对比,如果购物车中有这个商品的话,就只改变这个商品对应的id的num ...

  6. JavaScript中常见的数组操作函数及用法

    JavaScript中常见的数组操作函数及用法 昨天写了个帖子,汇总了下常见的JavaScript中的字符串操作函数及用法.今天正好有时间,也去把JavaScript中常见的数组操作函数及用法总结一下 ...

  7. Javascript数组函数库

    其实平时用的比较多的应该是push和pop,不过还是都记下来,以便后面使用. shift :删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4 ...

  8. 读《JavaScript权威指南》笔记(四)--数组、函数

    一.数组 1.数组是值的有序集合.每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引.JavaScript数组是无类型的:数组元素可以是任意类型,并且同一个数组中的不同元素也可能有 ...

  9. javascript中的所有内容都是一个对象:字符串、值、数组、函数…

    javascript中的所有内容都是一个对象:字符串.值.数组.函数…此外,javascript允许自定义对象.javascript对象JavaScript提供多个内置对象,如字符串.日期.数组等.对 ...

随机推荐

  1. DRDS和RDS主要用来存储用户交易信息,MongoDB主要用来存储商品维度信息

    数据集成Data Integration-数加-大数据-阿里云 https://www.aliyun.com/product/cdp 数据集成支持的数据源 数据源类型 数据源 来源数据源被读取 目标数 ...

  2. 批量索引以提高索引速度 -d --data-binary

    index create update 第1.2行分别为:信息行.数据行,在索引中增加或更换文档delete 移除文档,只包含信息行 Bulk API | Elasticsearch Referenc ...

  3. python模块学习(一)

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...

  4. HDU 4193 Non-negative Partial Sums(单调队列)

     题目大意: 给定一个长度为n的循环序列.从n个不同位置開始,问有几个位置使得一下情况成立:全部前缀的和都大等于0(n <=1000000). 下午的训练赛.之前没学过单调队列所以用的线段树 ...

  5. (4.14)存储:RAID在数据库存储上的应用

    关键词:(4.14)存储:RAID在数据库存储上的应用 转自:http://blog.51cto.com/qianzhang/1251260 随着单块磁盘在数据安全.性能.容量上呈现出的局限,磁盘阵列 ...

  6. 印象笔记ipad端快捷键

  7. qemu-img 的使用

    qemu-img是QEMU的磁盘管理工具,在qemu-kvm源码编译后就会默认编译好qemu-img这个二进制文件.qemu-img也是QEMU/KVM使用过程中一个比较重要的工具,本节对其用法和实践 ...

  8. 玩转git版本控制软件

    一.git的基本介绍 1.什么是git? git是个开源的分布式版本控制软件,用以有效.高速的处理从很小到非常大的项目版本管理.说白了就是个版本控制软件 2.git的使用方法 git软件是通过命令来实 ...

  9. c#读取xml操作

    1/定义一个XmlDocument对象xDoc 2/通过XmlDocument来load需要读取的xml文件 3/通过XmlDocument的SelectSingleNode来找到节点,并把节点转换为 ...

  10. Python操作——Redi

    redis是一个key-value存储系统. 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(列表).hash(哈希).set(集合).zset(有 ...