摘要:在同一個塊內,不允許用重復聲明變量。中為新增了塊級作用域。自帶遍歷器的對象有數(shù)組字符串類數(shù)組對象對象的對象等和結構對象。返回一個遍歷器,使遍歷數(shù)組的鍵值對鍵名鍵值。
目錄 1.語法 2.類型、值和變量 3.表達式和運算符 4.語句 5.數(shù)組 6.對象 7.函數(shù) 8.全局屬性和方法 9.詞法作用域、作用域鏈、閉包 10.原型鏈、繼承機制 11.this的理解 12.ES5新特性 13.ES6 內容 1.語法 2.類型、值和變量 3.表達式和運算符
typeof和instanceof
運算符優(yōu)先級
4.語句 5.數(shù)組 6.對象Object類方法和對象實例方法
Number、Date、 Math對象
7.函數(shù)js構造函數(shù)
8.全局屬性和方法JS全局函數(shù),Number方法、Math、Date
9.詞法作用域、作用域鏈、閉包理解詞法作用域、作用域鏈、閉包。
10.原型鏈、繼承機制js繼承機制,模擬類繼承的方式(原型鏈)
11.this的理解 12.ES5新特性 13.ES6
箭頭函數(shù)用法和普通函數(shù)有哪些區(qū)別,什么時候用比較好?
首先,形式上不同,表達更簡潔;一個用處就是,簡化回調函數(shù)。
let const聲明符和var的區(qū)別,塊級作用域的理解
let聲明的變量只在代碼塊內有效。 var命令會發(fā)生變量提升的現(xiàn)象,即變量可以在聲明之前使用,值為undefined;而let不會;暫時性死區(qū)(temporal dead zone, TDZ)在let聲明變量之前,該變量都不可用。 在同一個塊內,不允許用let重復聲明變量。 const和let基本相同,除了const聲明的變量的指針不能改變。 塊級作用域 ES5中只有全局作用域和函數(shù)作用域;這樣可能造成不便,如內層變量可能覆蓋外層變量,用來計數(shù)的循環(huán)變量泄露為全局變量。 ES6中l(wèi)et為js新增了塊級作用域。 外層作用域無法讀取內層作用域的變量;內層作用域可以定義外層作用域的同名變量;塊級作用域的出現(xiàn)可以使立即執(zhí)行函數(shù)表達式不再必要了。
模板字符串,什么時候用
單純的模板字符串還存在著很多的局限性。如: 1.不能自動轉義特殊的字符串。(這樣很容易引起注入攻擊) 2.不能很好的和國際化庫配合(即不會格式化特定語言的數(shù)字,日期,文字等) 3.沒有內建循環(huán)語法,(甚至連條件語句都不支持, 只可以使用模板套構的方法) “標簽模板” 過濾HTML字符串,防止用戶輸入惡意內容。
set和map類型對象
模塊import和export
單個模塊輸出:export 變量定義/函數(shù)定義等 單個模塊輸入:import {需要的變量名,函數(shù)名} from 某個文件 整體導入: module 新的對象名 from 某個文件 (這時,文件中定義的變量和函數(shù)都是對象的屬性和方法) 以默認方式輸出: export default 變量啊方法啊對象啊什么的 然后引入: import 新名字 from 某個文件 (這個新名字就是默認的變量啊方法啊對象啊什么的引用)
class和使用構造函數(shù)模擬“類”的區(qū)別
promise的理解
for...of
只有部署了iterator接口的對象才可以使用for...of循環(huán)遍歷。 自帶遍歷器的對象有數(shù)組、字符串、類數(shù)組對象(argument對象、DOM的NodeList對象等)、set和map結構、Generator對象。 普通對象不可以。 for...of是對鍵值的遍歷,而for...in是對鍵名的直接遍歷。
es6新增的字符串方法
includes() startsWidth() endsWidth() 都返布爾值,可傳入第二個參數(shù),起始位置,includes和startsWidth從指定位置往后查找,endsWidth往前找 repeat() 參數(shù)是重復幾次,返回重復后的字符串
es6新增的Number、Math方法
Number.isFinite() Number.isNaN() 與ES5的全局方法isFinite()和isNaN()不同的是,不會對非數(shù)值轉換為數(shù)組類型,再判斷;對非數(shù)值全部返回false Number.parseInt() Number.parseFloat() 與相應全局方法一樣,只不過放在了Number下,使模塊化 Number.isInteger() Number.isSafeInteger() Number.MAX_SAFE_INTEGER Number.MIN_SAFE_INTEGER Math.trunc() 去除一個數(shù)的小數(shù)部分,直接去掉,返回整數(shù)部分
es6數(shù)組的擴展
Arry.from() 將類數(shù)組對象或者可遍歷對象轉化成數(shù)組,Set結構 Arry.of() 參數(shù)是一組數(shù),將它們作為一個數(shù)組的元素返回數(shù)組。 與構造函數(shù)Array()的區(qū)別:Array()會因為參數(shù)的個數(shù)不同而不同,參數(shù)是一個時,返回含參數(shù)個元素為undefined的數(shù)組 find() findIndex() 參數(shù)是一個回調函數(shù),返回第一個匹配的元素或其下標。都可以發(fā)現(xiàn)NaN,彌補了IndexOf()的不足 fill() 用第一個參數(shù)填充數(shù)組,用可選的第一第二個參數(shù)指定填充的開始位置和結束位置。 entries() keys() values() 返回一個遍歷器,使for...of遍歷數(shù)組的鍵值對、鍵名、鍵值。 數(shù)組推導 直接在方括號中使用for...of和if語句等對原有數(shù)組操作返回新的數(shù)組,與map()和filter()功能類似。 也可以對字符串進行處理。 Array.observe() Array.unobserve()
*es6對象的擴展
方法Object.is(),與嚴格相等類似,但是區(qū)分-0 +0 NaN不同 +0 === -0 //true NaN === NaN //false Object.is(-0, +0) //false Object.is(NaN, NaN) //true Object.assign() 參數(shù)是一個目標對象,一個或多個源對象 _proto_讀取或者設置對象的prototype對象,以前用Object.create()。 Object.setPrototypeOf() Object.getPrototypeOf() 增強的對象寫法:直接寫入變量和函數(shù) 比如: var x = 1; var a = {x, hello(){console.log(x)}}; 屬性名表達式: 用表達式作為對象的屬性名。 比如: var zhanglu = "zhoushen"; var b = {[zhanglu], [zhanglu+ "hahaha"]}
Set
類似于數(shù)組的新的數(shù)據(jù)結構,但是成員值都是唯一的,沒有重復的值。 定義var s = new Set(); 參數(shù)是一個數(shù)組,用Array.from()可以轉化成數(shù)組。(數(shù)組去重的好方法~) 方法:add() delete() has() clear() 屬性:Set.prototype.size
generator(超難了解即可)
es6目前如何使用(有些可以直接用,其他的如何用)
列幾個es7特性(只需列出,不必學習)
數(shù)組、對象的解構賦值
“模式匹配”。 只要某種數(shù)據(jù)結構具有Iterator接口,都可以采用數(shù)組形式的解構賦值。 允許有默認值,也可以引用解構賦值的其他變量,但該變量必須已經(jīng)聲明。 數(shù)組的元素有次序,變量按次序取值;而對象屬性沒有次序,變量名必須和屬性名相同才能取到值。 數(shù)組和對象都可以用于嵌套結構的對象。 用途:
阮一峰 ES6-解構的用途
rest參數(shù)使用方法
用于獲取函數(shù)多余參數(shù),rest參數(shù)中的變量是個數(shù)組,該變量將多余的參數(shù)放入數(shù)組。 rest參數(shù)之后不能再有其他參數(shù)。
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://systransis.cn/yun/84360.html
摘要:請回復這個帖子并注明組織個人信息來申請加入。版筆記等到中文字幕翻譯完畢后再整理。數(shù)量超過個,在所有組織中排名前。網(wǎng)站日超過,排名的峰值為。主頁歸檔社區(qū)自媒體平臺微博知乎專欄公眾號博客園簡書合作侵權,請聯(lián)系請抄送一份到贊助我們 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1...
摘要:請回復這個帖子并注明組織個人信息來申請加入。權限分配靈活,能者居之。數(shù)量超過個,在所有組織中排名前。網(wǎng)站日超過,排名的峰值為。導航歸檔社區(qū)自媒體平臺微博知乎專欄公眾號博客園簡書合作侵權,請聯(lián)系請抄送一份到贊助我們 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=...
摘要:寫在前面每年這個時候又到了求職的旺季。求職前,我們都會花很多的時間在自己的技術水平提升筆面試的準備之上,但往往卻忽略了找工作第一步所需要的一個嚴謹且靠譜的簡歷。而程序員寫簡歷,第一步就是需要注意嚴謹而規(guī)范地使用各種技術詞匯。 ...
摘要:常用命令服務啟動滾動升級概念集群分布式存儲保存了整個集群的狀態(tài)控制節(jié)點控制節(jié)點負責整個集群的管理,例如容器調度資源狀態(tài)維護自動擴展?jié)L動更新等服務節(jié)點服務節(jié)點是真正運行容器 1.常用命令 服務啟動 [root@k8s-master ~]# systemctl start etcd [root@k8s-master ~]# systemctl start docker [root@k8s-...
摘要:點擊此處了解網(wǎng)易微專業(yè)課程前段時間報名參加了網(wǎng)易云課堂微專業(yè)課程前端開發(fā)工程師,這周課程開始了,正式學習。以下內容為前端開發(fā)工程師微專業(yè)的第一門課網(wǎng)頁制作的課程學習指南,學習視頻課程后自己整理的學習筆記,會持續(xù)更新內容。 何為網(wǎng)易微專業(yè)? 微專業(yè)是由網(wǎng)易云課堂聯(lián)合各領域知名專家,以就業(yè)為導向,精心打造的職業(yè)培訓方案。按要求完成學習,考試通過可獲得專業(yè)認定證書,令你求職或加薪多一份獨特優(yōu)...
閱讀 3058·2023-04-26 03:01
閱讀 3547·2023-04-25 19:54
閱讀 1599·2021-11-24 09:39
閱讀 1382·2021-11-19 09:40
閱讀 4261·2021-10-14 09:43
閱讀 2097·2019-08-30 15:56
閱讀 1504·2019-08-30 13:52
閱讀 1669·2019-08-29 13:05