国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

ES6知識點整理之數組解構和字符串解構的應用示例

2024-05-06 16:50:04
字體:
來源:轉載
供稿:網友

本文實例講述了ES6知識點整理之數組解構和字符串解構的應用。分享給大家供大家參考,具體如下:

ES6 允許按照一定模式,從數組和對象中提取值,對變量進行賦值,這被稱為解構(Destructuring), 而數組的解構賦值是從數組中提取值,按照對應位置,對變量賦值。

ES6之前的賦值操作

var arr = [1,2,3];var a = arr[0];var b = arr[1];var c = arr[2];console.log(a,b,c); // 1 2 3

對一維數組的解構賦值的應用

var arr = [1,2,3];var [a,b,c] = arr;console.log(a,b,c); // 1 2 3

對多維數組的解構賦值的應用

let arr = [22, [5,8], 11];let [a,[b,c],d] = arr;console.log(a,b,c,d); // 22 5 8 11

解構賦值用于變量的交換舉例

let x = 11;let y = 22;[y,x] = [x,y];console.log(x,y); // 22 11

解構賦值中不完全的解析示例

let arr = [22, [5,8], 11];let [a,[b],c] = arr;console.log(a, b, c); // 22 5 11let [m,[,n],o] = arr;console.log(m, n, o); // 22 8 11

不能被數組解析的值

let [m] = "";console.log(m); // undefined;let [x,y] = NaN; // NaN is not iterable. 不能被數組解析的值:NaN, undefined, null, {}

實現了iterator接口的類型都可以被解析賦值

let [x,y] = new Set([22, 33]);console.log(x,y); // 22 33

自己創造一個實現iterator接口的對象進行解構賦值

class Group{ constructor() { } next() {  return {value:'Joh', done: false}; } [Symbol.iterator]() {  return this; }}let group = new Group();let [x,y,z,m,n] = group;console.log(x,y,z,m,n); // Joh Joh Joh Joh Joh 備注:這里如果類中的next的done為true,那么全為undefined

… 運算符 轉換成數組的解構舉例

var [x,w, ...y] = [1,2,3,4,5,6];console.log(x,w, y); // 1 2 [3,4,5,6]

解構數組的默認值

如果數組中的不是undefined,都會被成功解構, 不會被默認值替代

let [x=15, y] = [undefined, 12];console.log(x,y); // 15 12let [m=12, n] = [null, 10];console.log(m, n); // null 10

字符串解構的處理

var [a,b,c] = 'hello';console.log(a,b,c); // h e l

 

希望本文所述對大家JavaScript程序設計有所幫助。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜宾县| 陇川县| 新蔡县| 平阳县| 濮阳市| 黄梅县| 太谷县| 玉田县| 丹东市| 琼结县| 泾源县| 固阳县| 博湖县| 镇坪县| 临桂县| 桐乡市| 马尔康县| 晴隆县| 阿尔山市| 化德县| 渑池县| 兴化市| 东乡族自治县| 龙游县| 柘城县| 武强县| 无极县| 区。| 新营市| 赣榆县| 招远市| 南溪县| 铜陵市| 宁乡县| 玉龙| 类乌齐县| 乌拉特前旗| 北辰区| 贵州省| 阳城县| 章丘市|