摘要:迭代器西紅柿孫雙雙結(jié)果西紅柿孫雙雙生成器西紅柿炒蛋結(jié)果西紅柿孫雙雙模版字符串普通字符串多行字符串字符串中嵌入變量函數(shù)的參數(shù)默認(rèn)值之前,當(dāng)未傳入?yún)?shù)時(shí),操作符當(dāng)被用于迭代器中時(shí),它是一個(gè)操作符當(dāng)被用于函數(shù)傳參時(shí),是一個(gè)操作符當(dāng)被用于函
迭代器 - Iterators
{ "use strict" function chef(foods){ let i = 0; return { next(){ let done = (i >= foods.length); let value = !done ? foods[i++]:undefined; return{ value:value, done:done } } } } let wanghao = chef(["西紅柿","孫雙雙"]); console.log(wanghao.next()); console.log(wanghao.next()); console.log(wanghao.next()); }
結(jié)果:
{value: "西紅柿", done: false}
{value: "孫雙雙", done: false}
{value: undefined, done: true}
{ "use strict" function* chef(){ yield "西紅柿"; yield "炒蛋"; } let wanghao = chef(); console.log(wanghao.next()); console.log(wanghao.next()); console.log(wanghao.next()); }
結(jié)果:
{value: "西紅柿", done: false}
{value: "孫雙雙", done: false}
{value: undefined, done: true}
{ // 普通字符串 let str = `In JavaScript " " is a line-feed.`; console.log(str); // 多行字符串 let str2 = `In JavaScript this is not legal.`; console.log(str2); // 字符串中嵌入變量 let name = "liushi"; window.location.href = `http://www.baidu.com?name=${name}`; }函數(shù)的參數(shù)默認(rèn)值
// ES6之前,當(dāng)未傳入?yún)?shù)時(shí),text = "default"; function printText(text) { text = text || "default"; console.log(text); } // ES6; function printText(text = "default") { console.log(text); }Spread / Rest 操作符
當(dāng)被用于迭代器中時(shí),它是一個(gè) Spread 操作符:
function foo(x,y,z) { console.log(x,y,z); } let arr = [1,2,3]; foo(...arr); // 1 2 3
當(dāng)被用于函數(shù)傳參時(shí),是一個(gè) Rest 操作符:當(dāng)被用于函數(shù)傳參時(shí),是一個(gè) Rest 操作符:
function foo(...args) { console.log(args); } foo( 1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]for...of 和 for...in
{ //返回值 let letters = ["a", "b", "c"]; letters.size = 3; for (let letter of letters) { console.log(letter); } // 結(jié)果: a, b, c //返回鍵,es6 let stus = ["Sam", "22", "男"]; stus.size = 3; for (let stu in stus) { console.log(stu); } // 結(jié)果: 0,1,2,size }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96990.html
摘要:循環(huán)語句一般循環(huán)方法注意在使用遍歷數(shù)組之前一定要判斷數(shù)組是否已經(jīng)定義用的方法遍歷數(shù)組對(duì)對(duì)象操作為對(duì)象的鍵用的方法總結(jié)來說總是得到對(duì)像的或數(shù)組字符串的下標(biāo)而和一樣是直接得到值。所以,不能對(duì)象用循環(huán)循環(huán) 循環(huán)語句 一般for循環(huán) { let array = [1,2,3,4,5,6,7]; for (let i = 0; i < array.length; i++) ...
摘要:判斷自身屬性是否存在方法返回一個(gè)布爾值,判斷對(duì)象是否包含特定的自身非繼承屬性。 判斷自身屬性是否存在 hasOwnProperty()方法返回一個(gè)布爾值,判斷對(duì)象是否包含特定的自身(非繼承)屬性。 { let obj = {a:1,b:2}; obj.hasOwnProperty(a) } 返回結(jié)果:true
摘要:與用來賦值的奇怪用法如果存在,反之則相當(dāng)于注意強(qiáng)烈要求注意一下,如果的值為,那么就要詳細(xì)的考慮一下,因?yàn)榍f不要玩脫了與判斷奇偶隱式返回值注意一哈,這里是括號(hào) && 與 || 用來賦值的奇怪用法 o_0 let a = x || y; // 如果 x 存在, a = x,反之則 a = y;相當(dāng)于 if(x){ let a = x; ...
摘要:返回結(jié)果注意方法返回的是數(shù)組長(zhǎng)度,如上示例,返回值為方法把一個(gè)或多個(gè)參數(shù)插入到數(shù)組頭部,返回?cái)?shù)組長(zhǎng)度。整數(shù),規(guī)定添加刪除項(xiàng)目的位置,使用負(fù)數(shù)可從數(shù)組結(jié)尾處規(guī)定位置。返回值類型描述包含被刪除項(xiàng)目的新數(shù)組,如果有的話。 數(shù)組去重 ...set(array)去重 { let array = [aa,12,aa,16,12,ab]; function dedupe(array)...
摘要:前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn)分為新聞熱點(diǎn)開發(fā)教程工程實(shí)踐深度閱讀開源項(xiàng)目巔峰人生等欄目。背后的故事本文是對(duì)于年之間世界發(fā)生的大事件的詳細(xì)介紹,闡述了從提出到角力到流產(chǎn)的前世今生。 前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn);分為新聞熱點(diǎn)、開發(fā)教程、工程實(shí)踐、深度閱讀、開源項(xiàng)目、巔峰人生等欄目。歡迎...
閱讀 783·2023-04-25 20:47
閱讀 2551·2019-08-30 15:53
閱讀 959·2019-08-26 14:05
閱讀 905·2019-08-26 11:59
閱讀 1692·2019-08-26 11:43
閱讀 1693·2019-08-26 10:57
閱讀 1366·2019-08-23 18:23
閱讀 2685·2019-08-23 12:57