javascript基础学习2

 数组
          var arr = new Array(2,1,5,6,7,4,9); 
          var arr2 = Array(1,2,"33"); //省略 new来创建数组
          var arr3 = [1,2,"33"]; //通过常量来创建数组
          Math.random(); //0~1之间任意的数。
          for(var i in arr){document.write(arr[i]+" ");} //另一种遍历 arr的方式。这个方法要比 for循环效率高
        /* 
         1.栈结构:
             push()方法:从一口进,从同一个口出。特点:先进后出。功能:给数组末尾添加元素, 
                  alert(arr); 
                 var aes = arr.push("ee","sdfs"); 
                  alert(aes); 返回值:添加完元素之后,数组的长度。
             pop()方法:去掉最后一个元素
                  var aes = arr.pop(); 
                 alert(aes); 返回值:返回刚才去掉的最后一个元素。
             队列结构:从一头进,从另外一头出去,特点:先进先出
             shift()方法,从数组的头部去掉一个元素
             unshift()方法,从数组的头部插入元素
             concat();数组的合并,返回值,合并后的新数组,arr.concat(arr2);
             slice();剪切数组,返回值,剪切后的新数组,slice(1,3);去掉下标第二第四的元素,
             splice()splice(下标,length,元素);
                 删除功能:  splice(1,1); 去掉第二个长度1,  var am = arr.splice(1,1); 这个返回值为删除的第二个元素,
                 添加功能splice(1,0,"sdf");splice(1,0,"sdf","dsf"); 从第二个元素开始添加元素
                 替换功能splice(1,1,"sdfsd"); 
             join();拼接符,将元素拼接成字符串,  arr.join("+s"); 返回值,返回字符串
             reverse();数组的逆向排序
             sort();升序排序,默认是用字符串的asc ii编码表来排序的,而不是按照大小来排序的,
         2.二维数组
             1,2,3,4,5
            6,7,8,9,10
            
  var arr = [[],[],[],[],[]];
            var count = 0;每个数组中的元素
            var arr = [];
            for(i=0;i<5;i++){var newArr = []
                for(j=0;j<5;j++){newArr.push(++count);}
                arr.push(newArr);
            }
            alert(arr.length);//返回5
            alert(arr[0]);//返回1,2,3,4,5,

            for(i=0;i<arr.length;i++){
                for(j=0;j<=i;j++){document.write(arr[i][j] + "&ensp");}
                document.write(<br />);
            }
         冒泡排序
           
   var arr4 = [9,4,8,6,7,2];
            for(i = 0;i < arr4.length;i++)
            {
                for(j = 0;j < arr4.length -i -1 ; j++)
                {
                    if(arr4[j] > arr4[j+1])比较前后两个数字是否符合交换条件
                    {
                        var tmp = arr4[j];
                        arr4[j] = arr4[j+1];
                        arr4[j+1] = tmp;
                    }
                }
            }
            alert(arr4);
         选择排序
            
  var arr4 = [5,6,4,7,3,9];
            for(i = 0;i < arr4.length;i++)
            {
                for(j = i;j < arr4.length  ; j++)
                {
                    if(arr4[j] < arr4[i])
                    {
                        var tmp = arr4[i];
                        arr4[i] = arr4[j];
                        arr4[j] = tmp;
                    }
                }
            }
            alert(arr4);
         变量函数中作用域
            
    var a = 10;
            function show(){
                a=5;
            }
            show();
            alert(a);//返回5

            var a = 10;
            function show(a){
                a=5;
            }
            show(a);
            alert(a);//返回10,形参在函数调用结束后被释放

            var arr = [1,2];
            function show(arr){arr.push(3,4);}
            alert(arr);//返回1,2,3,4 数组是复合数据类型/引用数据类型,并不存储在函数中,存储在堆段,所有复合数据类型都是引用地址
         字符串的函数:必须在document.write中使用
              var str = "hello"; str.charAt(2); 下标返回 l。 str[1]; 也可以,不能被赋值,  str[1] = "x"; ,只能  str = "sdf"; 
             big();用大号字体显示,
             blink();用闪动字符串(ie不兼容)
             bold();使用粗体
             fixed();以打字机的文本显示,
             strike();使用删除线
             fontcolor();
             fontsize();
             link();链接
             sub();下标,  document.write("hello".sub()); 
             sup();上标
            
             charCodeAt(下标);返回 asc ii码值
             fromCharCode(asc ii 码值)
             concat();   
    var str = "1";
    var str2 = "2";
    var str3 = str.concat(str2);
         字符串的查找方法:
             indexOf(); indexOf(子串,开始查找的下标),返回值,相同字符串第一次出现的位置,或者没有返回-1
             lastIndexOf(); lastIndexOf(子串);相同字符串第后一次出现的位置,返回值,没有-1
             search();参数可以是正则表达式, i是忽略大小写, g代表全局匹配
                  var str = "Abcabcabc";str.search("abc"); 返回3,正则表达式 /abc/i,返回0
         字符串替换:
             replace(); replace(匹配字符串/正则表达式,"df");返回值,替换后的字符串,
             replace("are","sdf");特点,只能替换第一次找到的目标
             replace(/sf/g,"sdf");替换掉所有相同字符串
             substring(); substring(2,4); 截取下标2和3不包括4,返回值,生成的新字符串
             slice(); slice(-2); 截取最后两个字符。
             split(); split(分隔符,生成的数组长度);返回一个数组
              var str = "this is it";var arr = str.split(" ",2); 长度两个的数组
            数组转换字符串 arr.join("");返回一个字符串
             toLowCase();全小写
             toUpperCase();全大写

猜你喜欢

转载自www.cnblogs.com/solaris-wwf/p/11622200.html
今日推荐