zoukankan      html  css  js  c++  java
  • js上 十五、数组-1

    十五、数组-1

    #1.什么是数组

    组:由多个成员构成的一个集体。

    数组:数组是值的有序集合

    值就是前面所讲过的这些数据(各种数据类型的都可以)

    img

    是数组中,每一个值(如100,’js’,true)都称之为一个元素。

    每一个元素在数组中所处的位置,称之为索引。是数字来表示,从0开始。

    img

    数组的作用

    可以存储多个数据;

    便于数据的管理和操作;

    #2. 创建数组

    在js中,创建数组有两种方式:

    ü 直接量(字面量)

    ü new的方式

    #直接量(字面量)

    img

    []表示是数组,数组中的元素之间使用逗号隔开。

    #new的方式

    img

    #关于new Array()的参数说明:

    1)new Array();括号里面不传参,表示创建一个空数组

    img

    2)new Array();括号里传了一个数字参数;这个参数表示数组的长度,

    img

    3)new Array();括号里传一个非数字参数,这个参数表示数组项;

    img

    4)new Array():括号里面传多个参数时,这些参数都是数组项

    img

    #3. 数组的基本操作

    #数组的类型:

    JavaScript数组是对象的特殊形式

    img

    #数组的属性:length

    ​ **数组.length== ** ** ** 数组的长度

    ​ 获取数组的长度

    ​ img

    ​ 设置数组的长度

    ​ img

    当设置长度为0时,可以清空数组

    img

    说明:

    ü JavaScript数组是动态的,根据需要它们会增长或缩减

    ü 数组元素的索引不一定要连续的,它们之间可以有空缺。

    #数组的索引

    获取数组的元素:

    **语法格式:数组[下标] ** ;

    img

    **注意 ** :当获取的数组项,超出数组的下标范围内,(该位置上没有值时)返回undefined;

    img

    修改数组项

    ​ 语法格式:数组[下标] = 值;

    img

    增加:

    img

    img

    img

    #遍历数组:

    img

    #4. 数组的方法:

    #4.1. 数组的添加方法:

    #4.1.1.向数组的末尾添加:push;

    ​ 语法:arr.push(val1,val2,val3,...):

    ​ 功能:向数组的末尾添加一个或多个值

    ​ 返回值:push方法的返回值是新数组的长度;

    ​ 说明:这个方法会改变原数组;

    img

    img

    #4.1.2.向数组的头部添加:unshift

    ​ 语法:arr.unshift(val1,val2.....)

    ​ 功能:向数组的头部添加一个或多个值

    ​ 返回值:unshift方法的返回值是新数组的长度;

    ​ 说明:这个方法会改变原数组;

    img

    img

    #4.2. 数组的删除方法:

    #4.2.1. 删除最后一项:pop

    img

    返回值:

    img

    #4.2.2. 删除数组的第一项 shift;

    语法:arr.shift();

    功能:删除数组的第一项:

    返回值:被删除的项;

    说明:原数组被改变

    img

    #小结:

    1. 创建数组的两种方式

    2. 注意new Array()的参数问题

    3. 数组的length既可以获取也可以设置

    4. 数组的添加方法有 push() =>末尾 unshift()=>头部 返回值都是数组的长度

    5. 数组的删除方法有 pop()=>删最后一个 shift()=>删第一个 返回值都是被删项

    #作业:

    5. 题目:var arrs = ["a","c",6,"e",5,3,"d"];将arrs中所有的数字乘以5,返回[30,25,15]

    思路:1)创建一个新数组。

    2)遍历原数组的每一项,判断是否是数字;

    3)如果是数字,那么当前数组项*5;

    4)添加到新数组中

    6. 题目:var nums = [18,6,9,23,88,5];写一个函数,将这个数组中所有的一位数前面补0,输出一个新数组,即最后返回[18,"06","09",23,88,"05"]

    思路:1)定义一个函数:并接收一个数组;

    2)定义一个空数组,放最后结果;

    3)遍历数组,

    4)判断数组的每一项是否小于10;

    5)如果小于10;前面拼接一个‘0‘;拼接后,添加到新数组中

    6)否则:直接添加到新数组中

    ​ 7)将新数组返回

    3.题目: 写一个函数bouncer(),实现将数组中的真值,添加到一个新数组中;

    ​ 例如:

    ​ bouncer([7, "ate", "", false, 9]) 应该返回 [7, "ate", 9].

    ​ bouncer(["a", "b", "c"])应该返回 ["a", "b", "c"].

    ​ bouncer([false, null, 0, NaN, undefined, ""]) 应该返回 [].

    ​ bouncer([1, null, NaN, 2, undefined]) 应该返回 [1, 2].

    ​ 思路:1)定义一个函数,接收一个数组作为参数;

    ​ 2)创建一个空数组 ;结果

    ​ 3)遍历数组,

    ​ 4)判断每一项是否为真值

    ​ 5)如果是真值,那么添加到新数组中

    ​ 6)返回新数组

    4. 题目:用多种方式实现删除数组的最后一项内容

    ​ 思路:利用数组的length属性

    5. 题目:封装一个函数,实现数组的push方法

    分析:push:向指定数组的末尾添加一项或多项内容;

    分析:/* 由push的功能得知:

    ​ 这个函数的功能是项指定数组添加一项或多项内容;

    ​ 因此,调用函数时,需要传入一个指定数组,传入要添加的内容;而要添加的内容个数不确定,因此形参不确定

    ​ 所以当实参个数不定时,想到arguments;

    ​ 第一个实参是指定的数组,后面的实参是要想数组添加的内容*/

    思路:

    1)将第一个实参赋值给变量arr(方便使用);

    2)从第二个实参开始遍历;每遍历一个实参,将其赋给arr下标为arr.length的位置,实现在数组的末尾添加

    ​ 3)循环结束将arr返回;

  • 相关阅读:
    201871010125 王玉江 实验三 软件工程结对项目
    201871010125-王玉江 实验二 个人项目—《背包问题》项目报告
    201871010125 王玉江 实验一 软件工程准备—软件工程初步认识
    201871010125-王玉江《面向对象程序设计(java)》第十五周学习总结
    201871010125 王玉江《面向对象程序设计(java)》第十三周学习总结
    201871010125 王玉江 《面向对象程序设计(Java)》第八周实验总结
    201871010125 王玉江 《面向对象程序设计(java)》 第四周学习总结
    201871010125王玉江第二十周总结
    第一次作业
    【 D3.js 入门系列 — 0 】 简介和安装
  • 原文地址:https://www.cnblogs.com/yzy521/p/14132709.html
Copyright © 2011-2022 走看看