-
Object
- 字面量創(chuàng)建
let obj={
name:zs,
age:15
}
- new操作符
let obj=new Object();
obj.name='zs';
obj.age='15'
-
Array
- Array基本創(chuàng)建方式有兩種
構造函數(shù) let list=new Array();
若括號里面有值,如let list=new Array(20)趟济,則會創(chuàng)建length屬性為20的數(shù)組火架;
也可以直接傳遞數(shù)組中要包含的項 如let list=new Array(‘zs’,'ls','ww');
注:也可以省略new關鍵字 - 第二種為字面量方法
如:let arr=[] - 數(shù)組方法:
push()
含義:在數(shù)組末尾添加元素
參數(shù):1~n (意思是可以添加多個值)
返回值:數(shù)組長度
var arr = [1,2,3,4];
var result1 = arr.push(5); //在數(shù)組末尾添加 5 棱烂;也可以是arr.push(5,6,7,8...)
console.log(result1); //返回值為數(shù)組長度境输,5
console.log(arr); //添加 5 后的原數(shù)組 [1,2,3,4,5]
pop( )
含義:刪除數(shù)組末尾的元素
參數(shù):無
返回值:刪除的元素
var arr = [1,2,3,4];
var result2 = arr.pop();
console.log(result2); //返回值為刪除的元素仪或,4
console.log(arr); //[1,2,3]
shift( )
含義:從數(shù)組中刪除首部元素
參數(shù):無
返回值:刪除的元素
var arr = [1,2,3,4];
var result3 = arr.shift();
console.log(result3); //1
console.log(arr);//[2,3,4]
unshift( )
含義:在數(shù)組首部添加元素
參數(shù):1~n
返回值:數(shù)組長度
var arr = [1,2,3,4];
var result4 = arr.unshift('a'); //也可以是 arr.unshift('a','b','c'....)
console.log(result4); //5
console.log(arr);//['a',1,2,3,4]
reverse()
含義:反轉(zhuǎn)(調(diào)換元素的位置)
參數(shù):無
返回值:反轉(zhuǎn)后的數(shù)組
let arr=[1,2,3,4];
let result5=arr.reverse();
console.log(result5) //[4,3,2,1]
console.log(arr) // [4,3,2,1]
sort()
let arr=[1,3,5,15]
arr.sort()//[1,15,3,5] 按照字符串排序
function compare(a,b){
//升序排序
return a-b
}
arr.sort(compare)//[1,3,5,15] 此處要注意的是回調(diào)函數(shù)compare不能帶()
arr.reverse()//再reverse可取降序排列 [15,5,3,1]
slice() (不對原數(shù)組進行修改)
含義:獲取子數(shù)組
參數(shù):1個參數(shù)幼东,表示提取子數(shù)組的開始位置臂容,直到結束
2個參數(shù),第一個表示開始位置根蟹,第二個表示結束位置(不包含結束位置)
返回值:子數(shù)組
1個參數(shù)
var arr = [1,2,3,4,5]
var result6 = arr.slice(1); //獲取子數(shù)組策橘,從索引為1的位置開始,直到結束
console.log(arr); //原數(shù)組不變[1,2,3,4,5]
console.log(result6); //返回值娜亿,子數(shù)組 [2,3,4,5]
2個參數(shù)
var arr = [1,2,3,4,5]
var result7 = arr.slice(1丽已,4); //獲取子數(shù)組,從索引為1的位置開始买决,直到位置為4時結束沛婴,不包括4
console.log(arr);//[1,2,3,4,5]
console.log(result7); [2,3,4]
concat() 不影響原數(shù)組,返回一個新的數(shù)組
let arr=[2,3,4]
let result=arr.concat(5,[5,6])
console.log(result)// [2,3,4,5,5,6] 返回拼接后的新數(shù)組
cinsile.log(arr) //[2,3,4] 原數(shù)組不變
splice()
含義:切割,插入督赤,替換
參數(shù):begin, len, item1, item2, item3....
begin 開始操作的位置
len 刪除元素的個數(shù)
item 插入的值
返回值:返回刪除的元素組成的數(shù)組
var arr = [1,2,3,4,5,6];
var result = arr.splice(1,2,'a','b'); //從索引為1的位置開始嘁灯,刪除2位,再插入a躲舌,b
console.log(result); // 返回值:返回刪除的元素組成的數(shù)組 [2,3]
console.log(arr);//[1,a,b,4,5,6]
indexOf() (從首部開始搜索)
lastindexOf() (從尾部開始搜索)
含義:查找元素的位置
參數(shù):一個參數(shù)時丑婿,表示元素
兩個參數(shù)時,第一個表示元素没卸,第二個表示開始搜索的位置
返回值:索引羹奉,如果找不到,則返回 -1
1個參數(shù)
var arr = [1,2,3,'a','b',4,5,6,'a'];
var result = arr.indexOf('a'); //從首部開始搜索约计,遇到 a 即停止搜索
console.log(result); // 3
2個參數(shù)
var arr = [1,2,3,'a','b',4,5,6,'a'];
var result = arr.indexOf('a',4); //從索引為4的位置開始搜索诀拭,遇到 a 即停止搜索
console.log(result); //8
var arr = [1,2,3,'a','b',4,5,6,'a'];
var result = arr.indexOf(8); //8不在數(shù)組中,返回-1
console.log(result); //-1