__x__(68)0926第十一天__ JavaScript 数组的常用方法

数组的常用方法:

  • 向数组末尾添加一个或多个元素,返回新长度

    • var arr = new Array();
      arr.push("唐僧");    // 返回 1
  • 删除数组最后一个元素,返回该值
    • document.write(arr.pop());    // 打印数组最后一个元素,并删除这个元素
  • 在数组开头添加一个或多个元素,返回新长度
    • arr.unshift("玉帝","如来");
  • 删除数组第一个元素,返回该值
    • document.write(arr.shift());    // 打印  "玉帝"
  • 返回数组的一部分,但不影响原数组 Array.slice(start , 个数)
    • var arr = [0,1,2,3];
      document.write( arr.slice(0,3) );    // 打印 0 1 2

      当不写元素个数时,将会返回从开始位置到最后的所有元素。

  • 删除数组中指定片段的元素
    • var arr = [0,1,2,3,4,5,6,7,8,9];
      
      document.write(arr.splice(0,3));    // 删除从 [0] 开始的 3 个元素
      // 此时,数组为 [3,4,5,6,7,8,9]
      document.write("<br />");
      
      document.write(arr.splice(0,1,0,11,22,33));    // 3
      console.log(arr);    // [0, 11, 22, 33, 4, 5, 6, 7, 8, 9]
      
      // 在 js 中写 00 会出错,写 0 没问题
  • 合并两个或者多个数组,返回一个新的数组。。。不对原数组产生影响
    • var arr = [0,1,2];
      var brr = ["00","11","22"];
      
      var newArr = arr.concat(brr);
      console.log(newArr);
      // [0, 1, 2, "00", "11", "22"]    新的数组在后面
      
      var newArr = arr.concat(brr,newArr,["牛魔王","铁扇公主"]);
      var newBrr = arr.concat(brr,newArr,"牛魔王","铁扇公主");
      console.log(newArr);
      // [0, 1, 2, "00", "11", "22", 0, 1, 2, "00", "11", "22", "牛魔王", "铁扇公主"]
  • 将数组转换成一个字符串
    • var arr = [0,1,2];
      var brr = ["00","11","22"];
      
      var newArr = arr.concat(brr);
      console.log(newArr);     // [0, 1, 2, "00", "11", "22"]    新的数组在后面
      
      // 不指定,默认以逗号分隔
      var newStr = newArr.join();    // "0,1,2,00,11,22"
      console.log(newStr);
      
      // 不指定,默认以逗号分隔
      var newStr = newArr.join("");    // ""012001122"
      console.log(newStr);
  • arr.reverse() 数组的反转,即颠倒数组元素的顺序
    • var arr = [0,1,2,3,4,5,6];
      
      arr.reverse();    // 将会对原数组产生影响
      console.log(arr);    // [6, 5, 4, 3, 2, 1, 0]
  • arr.sort() 对数组进行排序 
    • var arr = [0,1,2,3,9,8,7,6,5,4];
      
      arr.sort(function(a,b){
                      return b-a;    // 为降序 [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
                      // retuen a-b;    //为升序 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
                  });
      console.log(arr);

      以回调函数指定排序方式,sort() 会往回调函数传递俩个参数。。。返回值大于0则交换位置

原文地址:https://www.cnblogs.com/tianxiaxuange/p/9709327.html

时间: 2024-10-06 20:43:44

__x__(68)0926第十一天__ JavaScript 数组的常用方法的相关文章

__x__(69)0926第十一天__ JavaScript 指定函数对象的 this 上下文对象

指定函数对象的 this 上下文对象 即调用函数对象的 .call() 或者 .apply() 方法 指定 this 指向指定的对象. function myFun(){ document.write("我是"+this.name); } var sun = {name:"孙悟空"}; var zhu= {name:"猪八戒"}; .call(); myFun.call(sun); // 我是孙悟空 .apply(); myFun.apply(z

__x__(54)0918第七天__ JavaScript

JavaScript 运算符,也叫操作符 对一个或者多个值进行运算,都是会返回结果的. 比如: typeof    返回一个值的类型,返回值类型是字符串. 隐式类型转换: 任意值 = 任意值 + "";    // 就能转换成字符串 任意值 = 任意值 - 0;    // 就能转换成Number 任意值 = +任意值;    // 就能转换成 Number,更简洁 任意值 = !!任意值;    // 即可将 任意值 转换成布尔类型的值 算术运算符, 不会对等号右边的值产生影响: 对

__x__(64)0925第十天__ JavaScript 对象的 toString() 方法改变输出

JavaScript 对象的 toString() 方法改变输出 在平常,我们 console.log(对象);    // 会打印 [Object Object] 但是我们想要更详细的输出,此时,我们可以重写 对象.toString() 方法 Person.toString = function(){ return "Person ["+this.name+" , "+this.gender+","+this.age+"]"

__x__(75)1012第十三天__ JavaScript 包装对象

包装对象 所谓“包装对象”,就是分别与数值.字符串.布尔值相对应的Number.String.Boolean三个原生对象 这三个原生对象可以把原始类型的值变成(包装成)对象 var v1 = new Number(123); var v2 = new String('abc'); var v3 = new Boolean(true); typeof v1 // "object" typeof v2 // "object" typeof v3 // "obj

__x__(81)1017第十六天__ JavaScript 严格模式

严格模式 除了正常的运行模式,JavaScript 还有第二种运行模式:严格模式(strict mode).顾名思义,这种模式采用更加严格的 JavaScript 语法 同样的代码,在正常模式和严格模式中,可能会有不一样的运行结果. 一些在正常模式下可以运行的语句,在严格模式下将不能运行. 设计目的 早期的 JavaScript 语言有很多设计不合理的地方,但是为了兼容以前的代码,又不能改变老的语法, 只能不断添加新的语法,引导程序员使用新语法 严格模式是从 ES5 进入标准的,主要目的有以下几

__x__(53)0918第七天__ JavaScript 强制类型转换

其他进制的数字 二进制    以 0b 开头的 Number 八进制    以 0 开头的 Number 十六进制    以 0x 开头的 Number 注意:无论是多少进制的数字,输出都是十进制 强制类型转换 主要指的是将 变量类型 转换为String,Number,Boolean类型. 1. 转换为字符串 String 通过调用 String.toString() 方法 : Null .Undefined 没有 .toString() 方法,意味着不能用此方法转换 var a = 123;

__x__(59)0925第十天__ JavaScript 其他知识

对象的属性值 如果要使用特殊的属性名,需 对象["属性名"] = 属性值       // 存 对象["属性名"]       // 取 obj["123"] = 456; var n = "123"; // 可以传一个变量到 [] ,来取变量对应在 Object 中的属性值 console.log(obj[n]); 对象的属性值可以是任意数据类型,包括对象和函数. 使用 in 运算符来检查一个对象是否含有某属性 consol

__x__(60)0925第十天__ JavaScript 函数对象

1. 创建一个函数对象 var myFunc = new Function(); // typeof myFunc 将会打印 function 将要封装的代码以字符串的方式传递给构造函数 var aFunc = new Function("console.log('Hello!');"); console.log(aFunc); // 打印: " function anonymous(){ console.log("Hello!"); } " 使

__x__(63)0925第十天__ JavaScript 函数 上下文对象 原型对象

解析器在每次调用函数时,都会传递两个隐含参数: this    上下文对象 根据函数调用方式的不同,this 指向不同的对象 当作为普通函数调用时,this 指向全局对象 window 当作为对象的方法被调用时,this 指向调用该方法的对象 当作为构造函数调用时,this 指向创建的新对象 构造函数 出现的原因:由于目前为止,我们的对象都是用 new Object() 创建的,所以都是 Object 类的对象,不好区分...最好有个 Person 类,Animal 类 new Person()