小白学js第五天之数组

目录

数组的概念

数组是将许多元素(通常是同一类型)按照一定的顺序排放到一个集合中

数组的定义

  • 数组是个有序列表
  • 可以存放任意数据
  • 数组的长度可以动态的调整

数组字面量

通过数组字面量[]创建数组

//创建一个空数组
var array1 = [];
 //创建了一个长度为3数值的数组多个数值用,隔开.
 var array2 = [1, 2, 3];
 //创建一个包含有两个字符串的数组
 var array3 = ['a', 'b'];

通过.length()获取数组长度

//可以通过数组的length属性获取数组的长度
//创建了一个长度为3数值的数组多个数值用,隔开.
        var array2 = [1, 2, 3];
        console.log(array2.length); //长度为3;
//可以改变length的属性来改变数组中的元素
            var array2 = [1, 2, 3];
        console.log(array2.length);//3
        array2.length = 0;
        console.log(array2.length);//0

获取数组元素

数组的取值

  • 格式:数组名[下标/索引]
  • 功能:获取数组相应下标下的值,如果下标不存在则返回undefine
  • 数组的下标从0开始计算
     var color = ['green', 'red', 'yellow'];
        console.log(color[0]); //返回green
        console.log(color[1]); //返回red
        console.log(color[2]); //返回yellow
        console.log(color[3]); //返回undefined

遍历数组

遍历 :对每一个元素都访问一遍

基本语法:

 for(var i = 0; i < arr.length; i++) {
    // 数组遍历的固定结构
}

案例:
```

// 获取数组中的每一项并打印
    var arr1 = ['zs', 'ls', 'ww', 'zl'];
    for (var i = 0; i < arr1.length; i++) {
        console.log(arr1[i]);
    }
  //获取数组中的每一项,并且倒着输出
    var arr1 = ['zs', 'ls', 'ww', 'zl'];
    for (var i = arr1.length - 1; i >= 0; i--) {
        console.log(arr1[i]);
    }
      //给空数组赋值
    var array = [];
    for (var i = 0; i < 10; i++) {
        array[i] = i;
    }
    console.log(array);
      //清空数组
    array.length = 0;
    console.log(array);

    // var arr = []; //空数组 arr.length = 0
    // arr[arr.length] = 1;
    // console.log(arr.length); // arr.length = 1
    // arr[arr.length] = 2; //arr.length = 2

    // 翻转数组
    // var num = [3, 5, 2, 88, 66, 99, 54];
    // var invertNum = [];
    // for (var i = num.length - 1; i >= 0; i--) {
    //     invertNum[invertNum.length] = num[i];
    // }
    // console.log(invertNum);

       // 冒泡排序,从小到大 关键明白比较次数
    var num = [3, 5, 2, 88, 66, 99, 54];
    //外层循环: 控制趟数,每一趟找到一个最大值
    for (var i = 0; i < num.length - 1; i++) {
        //内层循环:控制比较次数,并且判断两个数的大小,把大的数王后移动,小的数往前移动
        for (var j = 0; j < num.length - 1 - i; j++) {
            //两两比较,从小到大排序
            if (num[j] > num[j + 1]) {
                //交换两个数的位置
                var tmp = num[j];
                num[j] = num[j + 1];
                num[j + 1] = tmp;
            }
        }
    }
    console.log(num);

```

Bye for now.

原文地址:https://www.cnblogs.com/1020-jj/p/10851200.html

时间: 2024-10-09 00:17:32

小白学js第五天之数组的相关文章

菜鸟学JS(五)——window.onload与$(document).ready()

我们继续说JS,我们常常在页面加载完成以后做一些操作,比如一些元素的显示与隐藏.一些动画效果.我们通常有两种方法来完成这个事情,一个就是window.onload事件,另一个就是JQuery的ready()方法.那么这 两种方法有什么区别呢?往下看: onload事件,是在页面中所有元素以及内容全部加载完成以后触发的:而ready()方法,则是在页面的DOM结构加载完毕以后就被触发了.也就是说ready()方法会在onload事件之前执行. 举一个例子: 假设有一个表现图库的页面,这种页面中可能

小白学js第四天

流程控制 目录 表达式和语句 流程控制的三大结构 debug 流程控制脑图请戳?[http://naotu.baidu.com/file/30ab2cfa33a855fb631c04f849b4a2e3?token=d497f04ccc07ad7b] 1 表达式和语句 1.1 表达式 可以产生一个值,有可能是个运算.函数.字面量 可以放在任何需要值的地方 1.2 语句 可以理解为一个行为,用:结束一个语句 2 流程控制的三大结构 2.1 顺序结构 由上到下依次执行 程序默认都是由上到下依次执行

小白学js第六天之代码规范,作用域以及预解析

目录 代码规范 命名规范 变量规范 注释规范 空格规范 换行规范 作用域 全局变量 局部变量 块级作用域 作用域链 预解析 什么是预解析 变量提升 此篇木有脑图,嘻嘻 代码规范 命名规范 变量.函数的命名必须要有意义 变量一般用名词 函数一般用动词 变量规范 操作符前后要有空格 var name = 'zs'; 注释规范 // 这里是注释 空格规范 if (true) { } for(var i = 0; i < n; i++ ) { } 换行规范 var arr = [1, 2, 3, 4];

【原创】小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载五(给按钮加图标)

在范例5-4所使用的导航栏中,已经为按钮加入了图标的样式,但是当时并没有介绍按钮的图标究竟是怎么一回事.下面截取范例5-4中导航栏部分的代码: 1 <divdata-role="footer"> 2 <div data-role="navbar"data-grid="c"> 3 <ul> 4 <li><a id="chat" href="#"data-i

小白学 Python 爬虫(15):urllib 基础使用(五)

人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(五)爬虫框架的安装 小白学 Python 爬虫(7):HTTP 基础 小白学 Python 爬虫(8):网页基

小白学 Python 爬虫(37):爬虫框架 Scrapy 入门基础(五) Spider Middleware

人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(五)爬虫框架的安装 小白学 Python 爬虫(7):HTTP 基础 小白学 Python 爬虫(8):网页基

小白学react之网页获取微信用户信息

通过上一篇<小白学react之EJS模版实战>我们学习了如何通过EJS模版生成我们高定制化的index.html文件. 本篇我们将会继续延续我们的alt-tutorial项目的实战计划,去获取微信扫码用户的信息,并将头像显示在我们页面的右上角上. 最终实战效果将如下所示. 首先根据我们的网站url生成二维码,比如我们可以通过浏览器的FeHelper来生成: 然后用户通过微信扫码: 最后用户确定授权后获取到用户的基本信息,并将头像显示在右上角: 1. 内网穿透准备 我们获取微信用户信息的过程中,

js 使用for循环遍历数组

今天写个无聊的东西!for循环的使用!如下:定义a数组,b为伪数组! var a = [1,2,3,0,5,4]; var b = document.getElementsByTagName('li'); //[<li>1</li>,<li>2</li>,<li>3</li>,<li>4</li>,<li>5</li>] 第一种:错误型! for ( var i = 0; i <

js 框架设计1.3数组化

这一节从作者哪里学来了[].slice.call([],0,1);这个方法第一个参数可是是字符串可以是数组或其他,第2个是数组截取位置的开始位置,第3个是终止位置. 作者说这个方法不兼容旧版本ie的,HTMLCollection.NodeList不是Object的子类 所以在最后写了一个mass framework里面的方法,具体的代码如下. 当然在我们日常用的jq当中,我可以调用makeArray()的方法,就算没有数组也要返回空数组. 插入jq的 makeArray()方法先 var mak