美文网首页吃饭用的前端
JS语法基础(四)之数组

JS语法基础(四)之数组

作者: CNLISIYIII | 来源:发表于2019-03-30 15:08 被阅读0次

数组:使用一个变量来管理多个(一组)数据,方便维护和操作。

数组是一组有序的(数组的编号有序)数据的集合

有序:数据在数组中是有编号的,这个编号(下标、索引)是有序的,从0开始。未来利用索引来操作数组。


1.数组的创建

1)通过构造函数

语法:

var 变量名 = new Array();   

var 变量名 = new Array(数据, 数据, 数据, 数据);

代码举栗:

var nums = new Array();  //空的数组。里面没有数据。

var nums = new Array(1000,1001,1002,1003);    //里面有数据。

2)数组字面量(推荐使用)

语法:

var 变量名 = [];     

代码举栗:

var nums = [];    //数组字面量,简写格式。底层还是new Array();

var nums = [1000,1001,1002,1003];

2.数组的操作

在js中数组内可以放任何不同类型的数据,但是在使用时一般存放同类型的数据。

1)获取数组中的某一个数据(利用索引)

语法:数组名[索引号]

代码举栗:

var userNames = ['张三','李四','王五','赵六'];

// 获取李四

console.log(userNames[1]); // 李四

console.log(userNames[4]); // undefined

2)设置数组中的某一个数据(利用索引)

语法:数组[索引号] = 数据;

代码举栗:

var userNames = ['张三','李四','王五','赵六'];

// 修改李四 为 LiSi

userNames[1] = 'LiSi';

console.log(userNames); // ['张三','LiSi','王五','赵六']

3)遍历数组

(遍历即循环。)

获取数组的长度:(数组中数据的个数)

语法:数组名.length

代码举栗:

//若从头开始遍历数组,开始的位置一定是0。因为索引是从0开始的。

var nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];

for (var i = 0; i < nums.length; i++) {     // i就是索引

document.write('<h2>' + nums[i] + '</h2>');

}

4)length

设定数组的长度:

语法:数组名.length = 数字;

若设置的长度小于原有的长度时,会自动删除后面多余的数据。

若设置的长度大于原有的长度时,会自动增加空的(undefined)数据。

代码举栗:

var userNames = ['张三','李四','王五','赵六'];

userNames.length = 6; // 因为数组长度为6,所以新增了两个空间

清空数组:数组名 = [];   或   数组名.length = 0;

如果索引溢出(即超出原有的最大索引),在此不会报错,而是返回一个undefined。

给数组末尾添加新的数据:

数组名[最后的索引数+1] = "数据";  相当于 数组名[数组名.length] = "数据"; 

若在最后添加数据,数组的长度会自动变化。

3.冒泡排序

规律:总共要比较多少趟,数组的长度-1;每趟比较的次数,数组的长度-当前趟数。

原理:重复比较相邻的两个数字

代码举栗:(从小到大)

var t;

        var num = [2,1,4,6,5,3,8,7,9,10];

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

            for(var j = 0; j < num.length-i-1; j++) {

                if(num[j] < num[j+1]) {

                    t = num[j+1];

                    num[j+1] = num[j];

                    num[j] = t;

                }

            }

            document.write(num[j] + " ");

        }

function minToMax(arr) {

            var temp;

            document.write("From min to max: ");

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

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

                    if(arr[j] > arr[j+1]) {

                        temp = arr[j+1];

                        arr[j+1] = arr[j];

                        arr[j] = temp;

                    }

                }

            }

            document.write(arr);

        }

相关文章

  • JS语法基础(四)之数组

    数组:使用一个变量来管理多个(一组)数据,方便维护和操作。 数组是一组有序的(数组的编号有序)数据的集合 有序:数...

  • python JS基础语法

    一、js基础语法 二、变量 三、运算符 四、分支结构 五、循环结构 六、函数 七、字符串 八、数组 九、对象 十、...

  • JS基础和WebAPIs的关联性

    学习ECMAscript标准规定的基本语法掌握JS基础语法只学习JS基础做不了网页交互效果学习JS基础语法是为了后...

  • 2019-01-25js基础语法

    一 什么是JS 二,js基础语法 三,变量 四, 运算符 五,分之结构

  • 4/07day28_js基础

    day28_js基础 回顾 JS基础语法 JS运算符 JS流程控制语句 条件语句 JS的条件语句和Java语法基本...

  • -----Web APIs-----

    JS学习ECMAScript基础语法是为后面做铺垫,Web APIs才是JS的应用,大量使用JS基础语法做交互效果...

  • JS数组

    JS数组 一、语法 二、伪数组 概念:没有数组共有属性的数组 三、转化 四、合并两个数组或字符串 注:不会改变原数...

  • JS 基础之数组

    一、数组 1. 定义 数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表...

  • js基础之数组

    什么是数组? 数组是一种特殊的变量,它能够一次存放一个以上的值。 如果您有一个项目清单(例如,汽车品牌列表),在单...

  • React-Native 随笔

    学习基础: js的基础知识, rect.js基础 JSX语法基础 FlexBox布局 安装 安装node.js下载...

网友评论

    本文标题:JS语法基础(四)之数组

    本文链接:https://www.haomeiwen.com/subject/wczjbqtx.html