国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Day07 - Array Cardio 中文指南二

Forest10 / 340人閱讀

摘要:中文指南二作者簡介是推出的一個天挑戰。完整中文版指南及視頻教程在從零到壹全棧部落。第七天的練習是接著之前中文指南一的練習,繼續熟練數組的方法,依舊沒有頁面顯示效果,所以請打開瀏覽器的面板進行調試運行。

Day07 - Array Cardio 中文指南二

作者:?liyuechun
簡介:JavaScript30 是 Wes Bos 推出的一個 30 天挑戰。項目免費提供了 30 個視頻教程、30 個挑戰的起始文檔和 30 個挑戰解決方案源代碼。目的是幫助人們用純 JavaScript 來寫東西,不借助框架和庫,也不使用編譯器和引用?,F在你看到的是這系列指南的第 7 篇。完整中文版指南及視頻教程在 從零到壹全棧部落。

第七天的練習是接著之前Day04 - Array Cardio 中文指南一的練習,繼續熟練數組的方法,依舊沒有頁面顯示效果,所以請打開瀏覽器的Console面板進行調試運行。


任務表

網站給了兩個數組,分別為people數組和comments數組,如下:

const people = [
    { name: "Wes", year: 1988 },
    { name: "Kait", year: 1986 },
    { name: "Irv", year: 1970 },
    { name: "Lux", year: 2015 }
];

const comments = [
    { text: "Love this!", id: 523423 },
    { text: "Super good", id: 823423 },
    { text: "You are the best", id: 2039842 },
    { text: "Ramen is my fav food ever", id: 123523 },
    { text: "Nice Nice Nice!", id: 542328 }
];

在此兩數組的基礎上實現一下幾個操作:

是否至少有一人年滿19周歲?

是否每一個人都年滿19周歲?

是否存在id=823423的評論?

找到id=823423的評論的序列號(下標)。

刪除id=823423的評論。

是否至少有一人年滿19周歲? Array.prototype.some()

some參考文檔

CASE

let isBiggerThan10 = (element, index, array) => {
  return element > 10;
}

[2, 5, 8, 1, 4].some(isBiggerThan10);  // false
[12, 5, 8, 1, 4].some(isBiggerThan10); // true

Syntax

arr.some(callback[, thisArg])

Parameters

element:當前在操作的對象。

index:當前操作對象的索引。

array:在操作的數組指針。

Return value
返回true或者false,返回true,說明數組中有滿足條件的數據存在,返回false,說明數組里面沒有滿足條件的數組存在。

項目源碼

版本一:

const isAdult = people.some(function(person){
  const currentYear = new Date().getFullYear();
  if(currentYear - person.year >= 19){
    return true;
  }
});
console.log(isAdult);

版本二:

const isAdult = people.some((person) => {
  const currentYear = new Date().getFullYear();
  if(currentYear - person.year >= 19){
    return true;
  }
});
console.log(isAdult);

版本三:

const isAdult = people.some(person => (new Date().getFullYear() - person.year) >= 19 );
console.log(isAdult);
是否每一個人都年滿19周歲? Array.prototype.every()

every參考文檔

CASE

let isBigEnough = (element, index, array) => { 
  return element >= 10; 
} 

[12, 5, 8, 130, 44].every(isBigEnough);   // false 
[12, 54, 18, 130, 44].every(isBigEnough); // true

Syntax

arr.every(callback)

Parameters

Parameters

element:當前在操作的對象。

index:當前操作對象的索引。

array:在操作的數組指針。

Return value
返回true或者false,返回true,代表數組中所有數據都滿足條件,否則,至少有一條數據不滿足條件。

項目源碼
const everyAdult = people.every(person => (new Date().getFullYear() - person.year) >= 19);
console.log({everyAdult});
是否存在id=823423的評論? Array.prototype.find(callback)

find參考文檔

CASE

let  isBigEnough = (element) => {
  return element >= 15;
}

[12, 5, 8, 130, 44].find(isBigEnough); // 130

Syntax

arr.find(callback)

Parameters

element:當前在操作的對象。

index:當前操作對象的索引。

array:在操作的數組指針。

Return value
如果有滿足條件對象,返回該對象,否則返回undefined

項目源碼
const findComment = comments.find(comment => comment.id === 823423);
console.log(findComment);
}
找到id=823423的評論的序列號(下標) Array.prototype.findIndex()

findIndex參考文檔

CASE

let isBigEnough = (element) => {
  return element >= 15;
}

[12, 5, 8, 130, 44].findIndex(isBigEnough); 
// index of 4th element in the Array is returned,
// so this will result in "3"

Syntax

arr.findIndex(callback)

Parameters

element:當前在操作的對象。

index:當前操作對象的索引。

array:在操作的數組指針。

Return value
返回滿足條件的當前對象在數組中的索引,如果找不到滿足條件的對象,返回-1。

項目源碼
const findCommentIndex = comments.findIndex(comment => comment.id === 823423);
console.log(findCommentIndex);
刪除id=823423的評論

splice參考文檔
slice參考文檔

Array.prototype.splice()

CASE

在索引2的位置移除0個元素,并且插入"drum"

var myFish = ["angel", "clown", "mandarin", "sturgeon"];
var removed = myFish.splice(2, 0, "drum");

// myFish 是 ["angel", "clown", "drum", "mandarin", "sturgeon"] 
// removed is [], 沒有元素被移除。

從索引3開始移除1個元素。

var myFish = ["angel", "clown", "drum", "mandarin", "sturgeon"];
var removed = myFish.splice(3, 1);

// 移除的原色是 ["mandarin"]
// myFish 為 ["angel", "clown", "drum", "sturgeon"]

從索引2移除一個元素,并且插入"trumpet"

var myFish = ["angel", "clown", "drum", "sturgeon"];
var removed = myFish.splice(2, 1, "trumpet");

// myFish 為 ["angel", "clown", "trumpet", "sturgeon"]
// 移除的元素為 ["drum"]

從索引0開始移除2個元素,并且插入"parrot", "anemone" 和 "blue"。

var myFish = ["angel", "clown", "trumpet", "sturgeon"];
var removed = myFish.splice(0, 2, "parrot", "anemone", "blue");

// myFish為 ["parrot", "anemone", "blue", "trumpet", "sturgeon"] 
// 移除的元素是 ["angel", "clown"]

從索引2開始移除所有元素

var myFish = ["angel", "clown", "mandarin", "sturgeon"];
var removed = myFish.splice(2);

// myFish 為 ["angel", "clown"] 
// 移除的原色為 ["mandarin", "sturgeon"]

Syntax

array.splice(start)
array.splice(start, deleteCount)
array.splice(start, deleteCount, item1, item2, ...)

array.splice(start): 從索引start開始移除后面所有的元素。

array.splice(start, deleteCount): 從索引start元素刪除deleteCount個元素。

array.splice(start, deleteCount, item1, item2, ...):start索引開始,刪除deleteCount個元素,然后插入item1,item2,...

Array.prototype.slice()

CASE

var a = ["zero", "one", "two", "three"];
var sliced = a.slice(1, 3);

console.log(a);      // ["zero", "one", "two", "three"]
console.log(sliced); // ["one", "two"]

Syntax

arr.slice()
arr.slice(begin)
arr.slice(begin, end)

arr.slice()等價于arr.slice(0,arr.length)

arr.slice(begin)等價于arr.slice(begin,arr.length)

arr.slice(begin, end):創建一個新數組,將索引begin-end(不包含end)的元素放到新數組中并返回新數組,原數組不被修改。

項目源碼 - 刪除id=823423的評論
const comments = [
 { text: "Love this!", id: 523423 },
 { text: "Super good", id: 823423 },
 { text: "You are the best", id: 2039842 },
 { text: "Ramen is my fav food ever", id: 123523 },
 { text: "Nice Nice Nice!", id: 542328 }
];
    
const findCommentIndex = comments.findIndex(comment => comment.id === 823423);

// delete the comment with the ID of 823423
//comments.splice(findCommentIndex,1);

const newComments = [
 ...comments.slice(0,findCommentIndex),
 ...comments.slice(findCommentIndex+1)
]; 

splice會修改原數組,slice不會改變原數組的值。

源碼下載

Github Source Code

社群品牌:從零到壹全棧部落

定位:尋找共好,共同學習,持續輸出全棧技術社群

業界榮譽:IT界的邏輯思維

文化:輸出是最好的學習方式

官方公眾號:全棧部落

社群發起人:春哥(從零到壹創始人,交流微信:liyc1215)

技術交流社區:全棧部落BBS

全棧部落完整系列教程:全棧部落完整電子書學習筆記

關注全棧部落官方公眾號,每晚十點接收系列原創技術推送

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/84303.html

相關文章

  • Day04 - Array Cardio 指南

    摘要:指南一作者簡介是推出的一個天挑戰。目的是幫助人們用純來寫東西,不借助框架和庫,也不使用編譯器和引用?,F在你看到的是這系列指南的第篇。完整指南在從零到壹全棧部落。篩出運行結果是的組成數組返回。 Day04 - Array Cardio 指南一 作者:?liyuechun 簡介:JavaScript30 是 Wes Bos 推出的一個 30 天挑戰。項目免費提供了 30 個視頻教程、30...

    zhangyucha0 評論0 收藏0
  • JavaScript 30 - 一起做一次了不起的挑戰

    摘要:加入我們,一起挑戰吧掃碼申請加入全棧部落 JavaScript 30 - 一起做一次了不起的挑戰 (Node+Vue+微信公眾號開發)企業級產品全棧開發速成周末班首期班(10.28號正式開班,歡迎搶座) 在Github上看到了wesbos的一個Javascript30天挑戰的repo,旨在使用純JS來進行練習,不允許使用任何其他的庫和框架,該挑戰共30天,我會在這里復現這30天遇到的挑...

    1treeS 評論0 收藏0
  • day1 - JavaScript Drum Kit 中文指南

    摘要:中文指南作者簡介是推出的一個天挑戰。頁面基礎布局標簽定義鍵盤文本說到技術概念上的特殊樣式時,就要提到標簽。主要代碼主要屬性有以下幾個中有一個樣式為,在本案例中,就是,是以中的為參照物,就是。 Day01 - JavaScript Drum Kit 中文指南 作者:?liyuechun 簡介:JavaScript30 是 Wes Bos 推出的一個 30 天挑戰。項目免費提供了 30 ...

    HackerShell 評論0 收藏0
  • Day17 - 數組排序中文指南

    摘要:一個用來創建新子字符串的函數,該函數的返回值將替換掉第一個參數匹配到的結果。返回值一個部分或全部匹配由替代模式所取代的新的字符串。 Day17 - 數組排序中文指南 作者:?黎躍春-追時間的人 簡介:JavaScript30 是 Wes Bos 推出的一個 30 天挑戰。項目免費提供了 30 個視頻教程、30 個挑戰的起始文檔和 30 個挑戰解決方案源代碼。目的是幫助人們用純 Java...

    coordinate35 評論0 收藏0

發表評論

0條評論

Forest10

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<