zoukankan      html  css  js  c++  java
  • w的学习笔记04.(2019年1月10日)

    今天学习的内容
    1:复习上次课
      for
      while

      数组   数组名.length    下标
      var arr=[23,45,67];
      var a = arr[arr.length-1];
      for(;;){}
      while(true){}
     =============================================================================================
    今天新的内容 数组的相关方法
       
    今天新的内容
    #新学习数组相关方法
    1、join                                        *****
        功能:将数组拼接字符串
        示例:
        var arr = ['abc','bcd','a11'];
        -->"abcbcdea11"  
        var word = arr.join(分隔符);
        示例:
        var provs = ["北京市","天津市","沈阳市"];

        <select><option>
        北京市
              </option><option>
        天津市
              </option><option>
        沈阳市
        </option></select>

    2、连接数组..                                   ***
        #不修改原数组内容,返回新数组
        #在程序必须要用新变量接收新数组
        数组.concat(值1,值2....,数组);

    3、获取子数组                                  *****
        数组.slice(开始位置,结束+1);
        开始位置
        结束位置 支持负数
        #如果你传入负数:自动 length负数  
        var id = [1,1,0,1];
        var rs = id.slice(1,3);
        console.log(rs);
        var id = [1,1,0,1];
        var rs = id.slice(-3,-1);
        //id.length-3 = 1
        //id.length-1 = 3
        rs = id.slice(1,3);
        console.log(rs);


    4、颠倒数组元素顺序                            ***
        #reverse()


    5、splice() 删除元素  添加元素  替换元素       *****

        a:删除
          var arr = [1,2,3,4,5];
          var del = arr.splice(开始位置,删除几个);

          var del = arr.splice(3,2);
        b:插入
          arr.splice(开始位置,0,99,100,101);
        c:
          arr.splice(开始位置,1,2,3);


    6排序                                          *****
        6.1:手写排序算法
          冒泡 选择  插入 ...   
        6.2:调用js数组自带方法 sort();
            var arr = [1,9,10,2,3];
            var arr = [1,2,3,9,10];
            #sort方法排序时按照.默认unicode
            #由sort方法默认按照unicode排序
            #按数字排序
            1:二个比较 小数放前  return 负数    a-b
            2: 二个比较 大数放后  retrun 正数    b-a
            3: 二个比较 相同      return 0
            #写一个方法定义排序规则
            function comp(a,b){
              if(a<b){       
                             
               return -1;
              }             -------------------------->retun a-b;
              if(a>b){
               return 1;
              }    
              if(a==b){
               return 0;
              }
            }
            arr.sort(comp);
    7、栈和队列:                                   *****
          一种特殊数组:一端封闭,只能从另一端进出数据..
        #非常灵活..
        var arr = [1,2,3];

        先进后出..
            如何使用:
            1:入 arr.push(值);
            2:出 var last = arr.pop();
             开头封闭,结尾出入栈
             出栈入栈不影响原有元素下标

            1:结尾封闭,开头出入栈
            入:arr.unshift(值);
            出:var first = arr.shift();
            #每次出栈入栈,都影响所有元素下标{慢}

            数组:
            1:var arr = [];   
              arr[0];
            2:push() pop();


    练习:
          var arr = [];

        1:请用户输入单词
          var input = prompt('请输入单词');
            while(input != 'exit'){
        2:保存数组
          arr.push(input);
          input = prompt('请输入单词');
          }
        3:以上二步操作循环

        4:如果用户输入 exit 循环退出
        5:输出所有数组中保存单词
          console.log(arr.toString());




    #特殊数组
    #数据结构[栈,队列]
    #队列:只能从一端进入,必须从另一端出
    如何使用:
    结尾入队列: arr.push(值);   pop
    开头出队列: arr.shift();    shift


    #二维数组
    数组中的元素,又引用另一个子数组;
    何时使用:
    1:只要存储横行竖列的二维数组
    2:存储上下级包含关系

    如何定义二维数组:
    1:创建同时,就要初始化
      var arr = [
       [0,2,0,0],
       [4,4,8,0],
       [0,0,0,0],
       [0,0,0,0]
      ];
      arr[0][1];
      arr[1][0];
      arr[1][2];
    2:先创建一维数组,再赋值
      var arr1 = [];
      arr1[0] = [1,3,5,7,9];
      arr1[1] = [2,4,6,8,10];


    #遍历数组,使用循环完成
    1:for(){}
    2:for(){}多层for

    #二层循环
    document.write("*");


















    今天内容
    1:数据常用方法
     join();    将数组拼接字符串
     concat();  将多个数据拼接成一个大数组
     slice();   获取子数组
     splice();  删除数组添加数组
    2:二维数组
      var arr =
      [
      [1,2,3],
      [2,4,6]
      ];
      var arr = [];
      arr[0] = [1,2,3,4];
      arr[1] = [2,3,4,5];
    3:二层循环
      外层循环  控制行
      内层循环  控制列
    4:图形

  • 相关阅读:
    OpenStack Pike超详细搭建安装文档 LinuxBridge版
    OpenStack Ocata 超详细搭建文档
    此博客关闭,转到 https://www.justbio.wang/
    面向对象03 封装 反射 内置方法
    面向对象02 继承
    面向对象01
    awk使用说明
    MySQL优化聊两句
    Redis分布式集群几点说道
    Nginx最大客户连接数算法一些遐想
  • 原文地址:https://www.cnblogs.com/caogn/p/10247888.html
Copyright © 2011-2022 走看看