zoukankan      html  css  js  c++  java
  • javascript高级程序设计第五章总结5.1

    1、object类型创建方法

    //new 方法
    var person=new object();
    person.name="AA";
    person.age=25;
    
    //对象字面量方法
    
    var person={
      name="AA",    //注意这里用的是逗号不是分号
      age=25 
    }

    2、Array类型创建方法

    方法一
    var colors=new Array("blue","green","red");
    
    方法二省略new
    var colors=Array("blue","green","red");
    
    方法三数组字面量方法
    var colors=["blue","green","red"];

    3、Array类型栈方法,pop(),push(),后进先出,shift(), unshift()先进先出。push()、unshift()返回的是数组的长度,pop(),shift()返回的是删除的项

    var colors=new Array();
    var count=colors.unshift("red","green");
    alert(count);   //2
    count=colors.unshift("black");
    alert(count);  //3
    var item=colors.pop();
    alert(item);  //green
    alert(colors.length); //2

    4、Array类型reverse()和sort()重排方法。recerse()简单的将数组内的顺序颠倒,sort()将数组的项转换成字符串再比较大小,局限0,1,5,10,15的排列顺序为0,1,10,15,5解决局限性可以用一个函数

    function compare(num1,mun2)
    {
      if(value1<value2)
      {
         return -1;  
       }else if(value1>value2)
      {
        return 1;  
      }else{
        return 0;
      }      
    };
    var values=[0,1,15,10,5];   //这里通过计算为[-4,-2,4,2,0]
    values.sort(compare);
    alert(values);     //0,1,5,10,15

    5、Array类型concat()方法会先创建一个副本,然后将接收到的参数添加到副本的末尾,最后返回这个重新构建的数组。

    var colors=["red","green","blue"];
    var colors2=colors.concat("yellow",["black","brown"]);
    
    alert(colors);  //red,green,blue;
    alert(colors2); //red,green,blue,yellow,black,brown

    6、Array类型slice()方法,在只有一个参数的情况下,slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束之间的项-但不包括结束位置的项。注意,slice()不会影响原始数组

    var colors=["red","green","blue","yellow","purple"];
    var colors2=colors.slice(1);
    var colors3=colors.slice(1,4);
    
    alert(colors);  //red,green,blue,yellow,purple;
    alert(colors2); //green,blue,yellow,purple;
    alert(colors3);  green,blue,yellow

    7、Array类型splice()方法,主要用途是向数组中插入项。

    删除项,例如splice(0,2)删除数组中的前两项

    插入项,例如splice(2,0,"red","green")会从当前数组的位置2开始插入字符串"red","green"

    替换项,例如splice(2,1,"red","green")会删除当前数组位置2的项,然后再从位置2开始插入字符串"red","green"

    8、Array类型位置方法,indexof(),lastIndexof(),这两个方法都接收2个参数,要查找的项和(可选的)表示查找起点位置的索引。indexof()是从头开始,lastIndexof()从末尾开始查找

    9、Array类型迭代方法,every()和some()相似,用于检查数组中的项是否满足某个条件。返回值为布尔值,every()必须每一项都为true,才会返回true,some()只要一项返回true就会返回true

    var numbers=[1,2,3,4,5,4,3,2,1];
    var everyResult=numbers.every(function(item,index,arry){
      return (item>2);
    });
    alert(everyResult);  //false;
    
    var someResult=numbers.some(function(item,index,array){
      return (item>2);
    });
    alert(someResult); //true

    10、Array类型迭代方法filter()方法,利用指定函数确定是否在返回的数组中包含某一项,返回符合条件的项组成的数组

    var numbers=[1,2,3,4,5,4,3,2,1]
    var filterResult=numbers.filter(function(item,index,array){
      return (item>2);
    });
    alert(filter); //[3,4,5,4,3]

    11、Array数组迭代方法,map(),返回每次调用的结果组成的数组

    var numbers=[1,2,3,4,5,4,3,2,1]
    var mapResult=numbers.map(function(item,index,array){
       return item*2;
    });
    alert(mapResult); //[2,4,6,8,10,8,6,4,2]

    12、、Array数组迭代方法forEach()只是对数组中的每一项运行传入的函数。没有返回值。

    var numbers=[1,2,3,4,5,4,3,2,1]
    numbers.forEach(function(item,index,array){
      //执行某些操作
    })

    13、Array数组归并方法reduce()和reduceRight().这两个方法都会迭代数组的所有项,然后构建一个最终返回的值,其中reduce()方法从数组的第一项开始,逐个遍历到最后一项,reduceRight()是从数组的最后一项开始向前遍历到第一项。接收4个参数:前一个值,当前值,项的索引和数组对象。

    //使用reduceRight()方法求和
    var values=[1,2,3,4,5];
    var sum=values.reduceRight(function(pre,cur,index,array){
      return pre+cur;
    });
    alert(sum); //15
  • 相关阅读:
    C++面向对象笔记:继承、派生
    教你制作伪静态
    安装android环境别忘了加个环境变量sdk_home
    javascript获取asp.net后台代码的方法
    一天学会PHP(转)
    access数据库里面用sql语句随机调用一条数据
    【转】 android sdk setup时出现:HTTPS SSL error , Server:10.159.192.62
    AutoCode下载及具体使用方法
    讲故事谈.NET委托:一个C#睡前的故事
    使用activeskin控件制作VB和易语言的皮肤的视频教程
  • 原文地址:https://www.cnblogs.com/yuyu9988/p/3354590.html
Copyright © 2011-2022 走看看