ARRAY

Array.concat()

会将参数连接到array中失去一个新数组并返回,不会批改原array;

如果传入的某个参数是数组,则会将该数组的元素连接进去

var a=[1,2,3]

a.concat(4,5); //返回[1,2,3,4,5]

a.concat([4,5]); //返回[1,2,3,4,5]

a.concat(4,[5,[6,7]]) //返回[1,2,3,4,5,[6,7]]


Array.join()

将array的每一个元素转换为字符串,并通过在两头插入指定的参数字符,将其衔接起来,返回连接好的字符串

a = new Array(1,2,3,"testing");

s = a.join("+"); //s = "1+2+3+testing"


Array.push()

将参数按程序追加到array尾部,会间接批改原array,并返回array的新长度

var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.push("Kiwi") //fruits=["Banana", "Orange", "Apple", "Mango", "Kiwi"];


Array.pop()

将移除array的最初一个元素,缩短数组的长度,并返回所移除元素的值;

如果数组为空,返回值是undefined

var stack=[];

stack.push(1,2); //stack:[1,2] 返回2

stack.pop(); //stack:[1] 返回2

stack.push([4,5]); //stack:[1,[4,5]] 返回2

stack.pop(); //stack:[1] 返回[4,5]


Array.reverse()

颠倒数组元素的程序,它会在原数组中进行操作


Array.shift()

移除并返回array 的第一个元素,如果数组为空,则间接返回undefined,返回数组原来的第一个元素


Array.unshift()

将参数插入array的头部,间接批改数组自身,返回数组的新长度


Array.splice()

array.splice(start,deleteCount,value,...)

将删除从数组索引start处(包含start)开始的零个或多个元素,并用参数列表中指定的值来替换掉所删除的元素,并且将间接批改数组,且返回另一个新数组,蕴含所删除的元素

var a=["Banana", "Orange", "Apple", "Mango"];

a.splice(1,2); //返回["Orange", "Apple"]; a变为["Banana","Mango"];


Array.slice()

array.slice(start,end)

返回的数组蕴含从索引start处始终到end之间(蕴含start不含end)的元素,如无end,则至尾部的所有元素;

如果start为正数,则示意从数组尾部开始计算,-1为最初一个元素,以此类推

如果end为正数,则示意从数组的尾部开始计算;

slice没有批改原数组

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

a.slice(0,3); //返回[1,2,3];

a.slice(3); //返回[4,5];

a.slice(1,-1); //返回[2,3,4]


Array.every()

array.every(function(){}); array.every(function(){},o);

用来测试数组的所有元素是否满足某些条件;会依照序号从小到大遍历元素,并对每个元素调用指定的function,如果其返回为false(或任何能转化为false的值),则会进行遍历,整体立即返回false;如果每一次调用都返回true,或者遍历的数组为空时,则整体返回true;

[1,2,3].every(function(x){return x<5;}) //=>true;所有元素都<5

[1,2,3].every(function(x){return x<3;}) //=>false;


Array.some()

顺次对数组的每个元素遍历function,如果其返回true,则会进行遍历,立即返回true;如果每一次调用都返回false,或者数组为空时,则返回false

[1,2,3].some(function(x){return x>5}); //false;

[1,2,3].some(function(x){return x>2}); //true;


Array.map()

返回一个新数组,将array的元素传递,遍历调用function,不会扭转原数组

[1,2,3].map(fucntion(x){return x*x;}); // =>[1,4,9]


Array.filter()

返回一个新数组,将array的元素传递,遍历调用function,过滤出合乎的元素

[1,2,3].filter(function(x){return x>1;}); // =>[2,3]


Array.forEach()

无返回值,只是遍历数组中的每一项进行funciton调用

var a=[1,2,3];

a.forEach(function(x,i,a){a[i]++;}); // a=>[2,3,4];


Array.indexOf()

array.indexOf(value,start)

在array中查问等于value的元素,并返回找到第一个元素的序号索引,从start地位开始,如没有start,则从0开始,如果没找到匹配的,返回-1

['a','b','c'].indexOf('b'); // => 1

['a','b','c'].indexOf('d'); // => -1

['a','b','c'].indexOf('a',1); // => -1


Array.lastIndexOf()

返回一个指定的字符串值最初呈现的地位,如果指定第二个参数 start,则在一个字符串中的指定地位从后向前搜寻

var str="I am from runoob,welcome to runoob site.";

var n=str.lastIndexOf("runoob", 9);

document.getElementById("demo").innerHTML=n; // => -1


Array.reduce()

array.reduce(function(){},inital)

按array的前2个元素进行function调用,接下来的调用传入之前计算值和array的下一个元素;

如果传入inital,则第一次调用时,以inital为第一个值带入,array[0]为第二个值

var numbers = [15.5, 2.3];

function getSum(total, num) {

return total + Math.round(num);

}

function myFunction(item) {

document.getElementById("demo").innerHTML = numbers.reduce(getSum, 0);

}

//第一步:0+ Math.round(15.5);=>0+16=16

//第二步:16+ Math.round( 2.3);=>16+2=18


Array.reduceRight()

遍历数组是从右到左(从最大的序号到最小的)


Array.sort()

在原数组中对数组元素进行排序,排序程序能够是字母或数字,并按升序或降序。

默认排序程序为按字母升序。

var points = [40,100,1,5,25,10];

points.sort(function(a,b){return a-b}); //=>1,5,10,25,40,100

points.sort(function(a,b){return b-a}); //=>100,40,25,10,5,1

var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.sort(); //=>Apple,Banana,Mango,Orange


Array.toString()

将数组转化成字符串,并返回该字符串


Array.toLocaleString();

将数组转化成本地化字符串

var d = new Date();

d.toLocaleString(); //=>2019/6/26 下午5:13:06

d.toString(); //=>Wed Jun 26 2019 17:13:32 GMT+0800 (中国规范工夫)


STRING

string.slice()

stringObject.slice(start,end) //起始下标(不蕴含开始)和完结下标,正数则从后往前

提取字符串的某个局部,并以新的字符串返回被提取的局部

var str="Hello happy world!"

document.write(str.slice(6)) //=>happy world!

document.write(str.slice(6,11)) //=>happy


string.split()

stringObject.split(separator,howmany) 返回的是数组!

//字符串或正则表达式;指定返回的数组的最大长度

var str="How are you doing today?"

document.write(str.split(" ") + "
") //How,are,you,doing,today?

document.write(str.split("") + "
") //H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?

document.write(str.split(" ",3)) //How,are,you

"2:3:4:5".split(":") //将返回["2", "3", "4", "5"]

"|a|b|c".split("|") //将返回["", "a", "b", "c"]


string.substr()

stringObject.substr(start,length) //起始下标(不蕴含开始);字符串的字符数

var str="Hello world!"

document.write(str.substr(3)) //lo world!

document.write(str.substr(3,7)) //lo worl


string.substring();

stringObject.substring(start,stop) //起始下标(不蕴含开始);完结下标

var str="Hello world!"

document.write(str.substring(3)) //lo world!

document.write(str.substring(3,7)) //lo w


string.concat()

stringObject.concat(stringX,stringX,...,stringX)

连贯两个或多个字符串

var str1="Hello"

var str2="world!"

document.write(str1.concat(str2)) //=>Helloworld!


string.indexOf()

stringObject.indexOf(searchvalue,fromindex) //检索的字符串值 ;开始检索的地位

var str="Hello world!"

document.write(str.indexOf("Hello")) //=>0


string.lastIndexOf()

从后往前搜


string.match()

在字符串内检索指定的值,或找到一个或多个正则表达式的匹配

var str="Hello world!"

document.write(str.match("world")) //=>world

document.write(str.match("World") ) //=>worldnull

var str="1 plus 2 equal 3"

document.write(str.match(/\d+/g)) //=>1,2,3


string.replace(regexp/substr,replacement)

var str="Visit Microsoft!"

document.write(str.replace(/Microsoft/, "W3School")) //=>Visit W3School!


string.serach()

用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串

var str="Visit W3School!"

document.write(str.search(/W3School/)) //=>6


string.chartAt()

stringObject.charAt(index) //index是字符在字符串中的下标。

var str="Hello world!"

document.write(str.charAt(1)) //=>e


string.toString()

var arr = new Array(3)

arr[0] = "George"

arr[1] = "John"

arr[2] = "Thomas"

document.write(arr.toString()) //"George,John,Thomas"


String(abc)

有些值,如undefined和null 无奈应用.toString();

故应用该API;


string.valueOf()

返回该原始值

var d=new Date();

var n=d.valueOf(); //1562057107221


string.sub()

字符串显示为下标


string.sup()

字符串显示为上标


string.small()

小字号显示字符串


string.big()

大字号显示字符串


string.strike()

删除线显示字符串


toLocaleLowerCase()

把字符串转换为小写


toLocaleUpperCase()

把字符串转换为大写


string.charCodeAt()

stringObject.charCodeAt(index)

办法可返回指定地位的字符的 Unicode 编码

var str="Hello world!"

document.write(str.charCodeAt(1)) //=>101


string.fixed()

把字符串显示为打字机字体


string.fontcolor(color)

依照指定的色彩来显示字符串


string.fontcolor(color)

应用指定的尺寸来显示字符串


string.fromCharCode(72,69,76,76,79)

承受一个指定的 Unicode 值,而后返回一个字符串


string.italics()

用斜体显示字符串


string.link()

将字符串显示为链接