您的位置:首页 > Web前端 > JavaScript

js数组基础API学习

2018-01-24 15:21 645 查看
转字符串:

       toString:a.toString       注:null 和undefined没有toString方法

       String :    String(a)         注:首先会调用toString方法null和undefined会

返回null和undefined

      

Typeof     :判断变量类型

              Vars =”zasda”    alert(typeof s)//string

 

 

Instanceof  :判断  xxx是xxx类型吗?

              Alert(person instanceof  Object  //person是object类型的吗

 

 

Number()转为数值所有类型  parseInt()  parseFloat() :字符串转为数值

 

 

Array:   数组的length可以设置例如:

       Varcolors = [“red”,”blue”,”green”]

       Colors.length=2;

       Alert(colors[2]);//undefined

它会根据设置的长度来移除不需要的,如上会把“green”自动移除

同样也可以增加:

       vara = ["red","blue","green"]

a.length=4

console.log(a.length)//4

console.log(a[3])//undefined

检测数组是不是数组:

       Array.isArray()

 

 

数组转字符串转换方法:toString()    valueOf()       toLocaleString()    

valueOf():返回最适合该对象类型的原始值;

toString(): 将该对象的原始值以字符串形式返回。

这两个方法一般是交由JS去隐式调用,以满足不同的运算情况。在数值运算里,会优先调用valueOf(),如a + b;在字符串运算里,会优先调用toString(),如alert(c)。

toLocaleString()与toString()如果重写后就不相同????

       varperson1={

         toLoaleString:function(){

                     return  “aaaaa”

   }

   toString:function(){

                      return  “bbb”

   }

 }

 var person2={

        toLoaleString:function(){

                      return  “cccc”

  }

  toString:function(){

                     return  “ddd”

  }

 }

Var paple =[ person1,person2];

Alert(people);        // bbb ddd

Alert(people.toString());     // bbb ddd

Alert(people. toLoaleString());     // aaaaa cccc

定义数组转为字符串的分割字符:Join() 只接收一个参数,作为分隔符的字符串.

       Varcolors =[“red”,”blue”,”green”];

       Alert(colors.join(“**”))   // red**blue**geen

 如果有一项数组内容为null或者undefined那么返回空字符串

数组通过栈方法添加数据或删除数据:推入:Array.push()  弹出:Array.pop() 

LIFO(后进先出)的数据结构 只会发生在栈的顶部
push();会返回推入后数组的长度。把新加入的数据会放在数组的末尾。
pop();会移除数组的最后一项,并且返回移除的数据
var colors = new Array();
 var count = colors.push("red","green","blue");

 console.log(count)//3

 count = colors.push(true);

 console.log(count);//4

 var item = colors.pop()

 console.log(item);//true

数组模拟队列:队列是先进先出即先移除数组的头部用shift(),加数据用push()。

向数组头部添加数据:unshift()

 var colors = new Array();
 var count = colors.push("red","green","blue");

 console.log(count)//3

 var item=colors.shift();

 console.log(item);//red

数组重排序方法:Array.reverse() 将数组变为逆序

    Array.sort()先调用toString方法将数组转为字符串然后比较字符串确定排序

 var values=[1,2,3,4,5];

values.reverse();

console.log(values);//5,4,3,2,1

var values = [0,1,5,10,15];

values.sort;

 console.log(values);//0,1,10,15,5 注:先比较第一位然后依次比较

数组的操作:Array.concat() 将当前数组复制一份,返回当前数组的副本和接收的参数

 var number =[1,2,3,4,5];

var newNumber = number.concat("yellow",[true,false],null);

console.log(number);//1,2,3,4,5

 console.log(newNumber);//1,2,3,4,5,yellow,true.false,null

 Array.slice()
可以接收一到两个参数,如果只有一个参数则复制从输入参数下标的数组位置到数组结束,如果有两个参数

则复制从当前位置到结束位置的值但不包括指定结束的值。

 var number = [0,1,2,3,4,5];

console.log(number.slice(1));//1,2,3,4,5

 console.log(number.slice(1,3));//1,2

数组切割(删除,插入,替换):Array.splice() 返回被切出的数据

 删除:指定两个参数,要删除的第一项的位置和要删除的项数 例如:splice(0,2)删除前两项的数据

插入:最少3个参数,起始位置,0(要删除的项数),要插入的项

替换:最少三个参数,起始位置,要删除的项数,要插入的项数

var number =[1,2,3,4,5]

var remove = number.splice(0,1);

console.log(number);//2,3,4,5

console.log(remove);//1

remove=number.splice(0,0,1);

console.log(number);//1,2,3,4,5

console.log(remove);//空数组

remove = number.splice(0,1,true);

console.log(number);//true,2,3,4,5

console.log(remove);//1

数组的位置方法:Array.indexOf()从前往后获得下标为XX的数据 Array.lastIndexOf()从后往前获得下标为XX的数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jsapi