JS(JavaScript)
一.Array范例
1.数组的罕见要领;
- 检测数组;
var arr = [1,2,3,4,5];
console.log(arr instanceof Array);//true
console.log(Object.prototype.toString.call(arr));
console.log(typeof null);//object
// console.log(null instanceof Null);//报错
console.log(Object.prototype.toString.call(null));//false
console.log(Array.prototype.isPrototypeOf(arr));//true
// Object.prototype.isPrototypeOf()要领- 推断该范例是不是涌现在当前对象原型链中
console.log(Array.isArray(arr));//true
- 转换数组;
toString():把数组转为字符串,并返回
valueOf():返回数组对象原始值
var arr = [1,2,3,4,5];
console.log(arr.toString());//1,2,3,4,5
//应用toString()要领把数组转为字符串
console.log(arr.valueOf());//[1,2,3,4,5]
//多个数组元素被逗号(,),举行分开构成字符串
var obj = {
name : '犬夜叉'
}
- 收支栈要领;
push():增添数组末端增添一个元素,或多个元素
pop():删除数组末端末了一个元素返回数组
shift():删除数组前面的元素并返回数组
unshift():增添数组前面的或多个元素,并返回新长度
var arr = [1,2,3,4,5];
arr.push(6,7);
//增添数组末端增添一个元素,或多个元素
console.log(arr);
arr.pop();
//删除数组末端末了一个元素返回数组
console.log(arr);
arr.unshift(7);
//增添数组前面的或多个元素,并返回新长度
console.log(arr);
arr.shift();
//删除数组前面的元素并返回数组
console.log(arr);
- 排序要领;
reverse():反转数组元素递次
sort():对数组元素举行排序
返回值以排序数组
var arr = [3,1,2,3,4,10];
var result = arr.sort(function (a,b) {
if (a < b);{
return 1;
}
if (a > b) {
return 1;
}
})
console.log(arr);
//反转数组元素递次
console.log(result);
//数组的元素举行分列
- 衔接要领;
衔接两个或多个数组,并返回效果
var arr = [1,2,3,4,5];
console.log(arr.concat(6));
console.log(arr.concat([7,8,9]));
//兼并两个或多个数组,因而不会转变已有的数组,
- 操作要领;
slice():猎取数组的一部分,并返回个新数组
splice():数组中增添和删除元素
var arr = [1,2,3,4,5];
/*splice(start, deleteCount)要领
* 用于删除当前数组中指定位置指定个数元素
* */
var result = arr.splice(0, 5);
console.log(result);
console.log(arr);
// splice(start, deleteCount, item1, item2, ...)要领
//向指定数组指定位置增添元素
//start- 示意删除最先位置
//deleteCount-示意删除个数
// item1, item2, ... - 示意向数组增添的元素
// 返回值-将删除的元素构成的新数组举行返回
// var result = arr.splice(0, 0, 6,7,8);
// console.log(result);
// console.log(arr);
// var result = arr.splice(0, 3, 6,7,8);
// console.log(result);
// console.log(arr);
- 检索要领;
indexOf():搜刮数组中的元素,并返回其位置
lastlndexOf():返回个字符串末了涌现位置,在个字符串指定位置从右往左征采
var arr = ['犬夜叉','桔梗','犬夜叉','戈薇','杀生丸'];
// 用于检索数组中是不是包括指定元素内容 -> 返回元素地点的位置
// 返回第一个婚配元素的位置信息
console.log(arr.indexOf('犬夜叉'));// 0
// lastIndexOf() - 从右至左的递次举行检索
console.log(arr.lastIndexOf('犬夜叉'));//
// indexOf() - 从左至右的递次举行检索
console.log(arr.indexOf('四魂之玉'));//-1
//假如检索的元素并不在指定的数组中时 -> 效果为 -1
2.迭代与合并要领;
- 迭代要领;
var arr = [1,2,3,4,5];
var result = arr.every(function (currentValue, index,array,) {
return (currentValue <5);
});
console.log(result);
- 合并要领;
var arr = [1,2,3,4,5];
arr.reduce(function(accumulator, currentValue, currentIndex, array){
console.log(accumulator)
return accumulator + currentValue;
});