js-day06数组

简介: js-day06数组

js-day06数组


应用程序 = 程序语句 + 数据结构 + 算法

数据结构: 线形表, 链表, 堆栈 , 队列, 树, 图

      01、数组: 线形表
      一、数组是做什么?
           存储一系列有序数据的集合
             var num = 100 
             100 ,200, 300, 400 一系列
      二、数组创建
          两种方法
           - 构造函数:  
              new Array()  //空数组
            var arr1 = new Array()  
              =>arr1  数组名
                      引用变量
              => new Array() 
                  创建数组对象
            var arr2 = new Array(100,200,300,400)
            var arr3 = new Array(5)  //只有一个参数是,表示数组存储元素个数
          - 字面量
              var arr1 = []  //空数组
              var arr2 = [100,200,300,400]   
                            0   1  2  3    索引号
      三、 访问数组元素
           索引号->数组下标   
             每个数组元素都对应一个索引号,数组元素索引号从0开始,第一个元素索引号是0   
           通过索引号访问数组中元素
           语法:
            var arr2 = [100,200,300,400]   
            arr2[0]
            arr2[1]
            arr2[0] = 1000  //改变原来的数组!因为栈储存的地址一样
      四、数组长度
            =>数组存储元素个数
          length属性
          arr.length
      五、访问数组中所有元素
           遍历
           var arr = [100,200,300,400]
                       0   1   2   3
           arr[0]
           for(var i = 0; i< arr.length; i++){
                arr[i]
           }
      六、数据类型
           var arr = [100,200,300,400]
           arr => Array 数组类型 -> 复杂数据类型
           数据类型:
            基本数据类型
               number string boolean undefind null 
            复杂数据类型-对象类型-引用类型
              数组-> Array
                new Array()
              Object
      02、数组常用方法 var arr = []
      语法
       数组名.方法()
    -1 数组添加元素(数组末尾添加元素)
       push()
       arr.push(98)  // [98]
       arr.push(87)  // [98,87]
    //如果只是想看看数组内容
      console.log(arr)
    -2 数组最前面插元素
       unshift()
    -3 删除末尾元素
        pop()
    -4 删除第一位元素
        shift()
    -5 删除数组任意元素
       截取元素,按索引号
       splice(索引号,截取元素个数)
    -6 反转数组
       reverse()
    -7 数组排序 sort()
      默认由小到大排序
      排序: 按字典顺序 第一位比较排序,then第二位进行比较
          98 89 783
          783 89  98
      改变默认排序:
      方法1:函数 
        function changeSort(a,b){
          return a - b;  //即数字由小到大排序
          return b - a;  //即数字由大到小排序
        }
        使用函数:arr.sort(changeSort)
      方法2: 匿名函数
         arr.sort(function(a,b){
             return b - a
         })   
    -8 数组拼接
      var arr1 = [1,2,3] 
      var arr2 = [4,5,6]
       arr1.concat(arr2)  
         =>返回一个拼接之后的新数组  [1,2,3,4,5,6] !!!未改变原数组哦!!!
    -9 返回数组元素索引号
       indexOf(元素)

面试题! 03.数组内存结构 + 案例

    变量内存结构
    内存: 运行的程序加载到内存中执行
    储存在栈区:基本数据类型变量 | !!!引用的变量(var 变量名 = 赋值/表达式)
    储存在堆区:复杂数据类型对像 数组
    应用
相关文章
|
6天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
25 3
|
6天前
|
存储 JavaScript 索引
JS中数组的相关方法介绍
JS中数组的相关方法介绍
|
6天前
|
JavaScript Java
JS有趣的灵魂 清空数组
JS有趣的灵魂 清空数组
|
1天前
|
前端开发 JavaScript
前端 js 经典:数组常用方法总结
前端 js 经典:数组常用方法总结
11 0
|
6天前
|
JavaScript
通过使用online表单的获取使用,了解vue.js数组的常用操作
通过使用online表单的获取使用,了解vue.js数组的常用操作
|
6天前
|
存储 JavaScript 前端开发
深入了解JavaScript中的indexOf()方法:实现数组元素的搜索和索引获取
深入了解JavaScript中的indexOf()方法:实现数组元素的搜索和索引获取
9 0
|
6天前
|
JavaScript 前端开发
js关于数组的方法
js关于数组的方法
11 0
|
6天前
|
JavaScript 前端开发
js怎么清空数组?
js怎么清空数组?
14 0
|
6天前
|
存储 JavaScript 前端开发
js处理数组的方法
js处理数组的方法
14 2
|
6天前
|
JavaScript 前端开发 索引
JavaScript 数组的索引方法数组转换为字符串方法
JavaScript 数组的索引方法数组转换为字符串方法