共计 5996 个字符,预计需要花费 15 分钟才能阅读完成。
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()
将字符串显示为链接