es6 陣列找最大值 ES6 中的的內建物件深究

2021-10-13 23:21:56 字數 3268 閱讀 9134

以後就都用三爺的鎮樓了!哈哈哈

今天讓我們來研究一下es6中的內建物件把。其中有很多方法是能讓我們的工作事半功倍的!

擴充套件運算子可以將陣列拆分成以逗號分隔的引數序列

let ary = ["a","b","c"]

...ary //輸出1,2,3

console.log(...ary)//輸出 1 2 3 ,相當於下面的**;

console.log(1,2,3)

注意這裡 . . . ary是剩餘引數
擴充套件運算子應用於陣列合併

let ary1 = [1,2,3];

let ary2 = [4,5,6];

// ...ary1 //輸出1,2,3

// ...ary2 //輸出4,5,6

let ary3 = [...ary1,...ary2];

console.log(ary3)// 輸出array[1,2,3,4,5,6]

最終得到的是乙個長度為6的陣列! 下面是第二種放法,只用在原陣列上操作,更實用
let ary1 = [1, 2, 3];

let ary2 = [4, 5, 6]

ary1.push(...ary2);

console.log(ary1)//輸出得到的是和上面一樣的陣列!

利用擴充套件運算子將類陣列或可遍歷的物件轉換為真正的陣列

先在h5中新建6個div盒子;

var odivs = document.getelementsbytagname("div");

console.log(odivs)//htmlcollection(6)

var ary = [...odivs];

ary.push("a");

console.log(ary);//array(7)得到乙個包含『a'且長度為7的真陣列!

怎麼樣push是不是很好用!
建構函式方法:array.from() 將偽陣列或可遍歷物件轉換為真正的陣列

//定義乙個集合

let arraylike = ;

//轉成陣列

let arr2 = array.from(arraylike); // ['a', 'b', 'c']

方法還可以接受第二個引數,作用類似於陣列的map方法,用來對每個元素進行處理,將處理後的值放入返回的陣列

let arraylike = 

let newary = array.from(arraylike, item => item *2)//[2,4]

這裡要注意,如果是物件,那麼屬性需要寫對應的索引
例項方法:find() :用於找出第乙個符合條件的陣列成員,如果沒有找到返回undefined

let ary = [, ]; 

let target = ary.find((item, index) => item.id == 2);//找陣列裡面符合條件的值

當陣列中元素id等於2的查詢出來,注意,只會匹配第乙個

還記得jquery中find是啥嗎?find()是父親後面的所有子元素!
findindex():用於找出第乙個符合條件的陣列成員的位置,如果沒有找到返回-1

let ary = [1, 5, 10, 15];

let index = ary.findindex((value, index) => value > 9);

console.log(index); // 輸出結果為2 即為第三個元素10的索引號

可否還記得indexof() 方法檢索時如果未出現要檢索的字串返回值也是-1
[1, 2, 3].includes(2) // true 

[1, 2, 3].includes(4) // false

這個比較好記
模板字串:es6新增的建立字串的方式,使用反引號定義

let name = `zhangsan`;
模板字串中可以解析變數

let name = 'zhangsan'; 

let sayhello = `hello,my name is $`; // hello, my name is zhangsan

模板字串中換行

let result =  

let html = ` $$$

`;

這個是不是很方便!如果在html字串中這些換行和空格都不會被讀取出來!
在模板字串中可以呼叫函式

const sayhello = function () ; 

let greet = `$ 哈哈哈哈`;

console.log(greet); // 哈哈哈哈 追不到我吧 我就是這麼強大 哈哈哈哈

就乙個字,方便!
es6 提供了新的資料結構 set。它類似於陣列,但是成員的值都是唯一的,沒有重複的值。

set本身是乙個建構函式,用來生成 set 資料結構

set函式可以接受乙個陣列作為引數,用來初始化。

const s = new set();//這裡時可以new乙個!

const set = new set([1, 2, 3, 4, 4]);//

陣列去重你值得擁有!是不是很方便!

es6 陣列找最大值 475,有效的山脈陣列

問題描述 給定乙個整數陣列a,如果它是有效的山脈陣列就返回true,否則返回false。讓我們回顧一下,如果a滿足下述條件,那麼它是乙個山脈陣列 示例 1 輸入 2,1 輸出 false示例 2 輸入 3,5,5 輸出 false示例 3 輸入 0,3,2,1 輸出 true1,從兩邊找這題讓判斷乙...

ES6系列 詳解ES6中的Map

map類似於物件,都用於儲存key value結構的資料。但是,在傳統的物件上,只能用字串或者symbol來作為鍵名。然而,map與物件最大的差別就在於它可以各種資料型別作為鍵名。map是乙個建構函式,用於例項化例項。const m newmap const o m.set o,content m....

es6陣列中的遍歷

我經常會運算元組,而且避免不了對每乙個欄位的操作,這樣就會用到遍歷,遍歷有好多種,今天我歸納一下經常會用到的幾個 1 foreach是乙個我們經常用的乙個 var name 張三 李四 王五 name.foreach function v,k 注意 jquery中each方法是反的,比如 name ...