亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 48
粉絲 0
評(píng)論 0
訪問量 44760
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
解構(gòu)和模板標(biāo)簽(0902)
丶久而舊之丶
原創(chuàng)
896人瀏覽過

解構(gòu)和模板標(biāo)簽

數(shù)組解構(gòu)

  1. let fruits = ["蘋果", "香梨", "獼猴桃", "香蕉", "火龍果", "西瓜"];
  2. // 把某一個(gè)元素之后的所有元素放入另一個(gè)數(shù)組中
  3. // 傳統(tǒng)方法
  4. let arr = fruits.slice(2);
  5. console.log(arr);
  6. // 用數(shù)組解構(gòu)中不定參數(shù)解決
  7. let [firstfruit, secondfruit, ...rest] = fruits;
  8. console.log(firstfruit, secondfruit, rest);
  9. console.log(...rest);
  10. // 數(shù)組合并
  11. let tmp1 = [1, 2, 3];
  12. let tmp2 = [4, 5, 6];
  13. let tmp3 = [7, 8, 9];
  14. let res = tmp1.concat(tmp2, tmp3);
  15. console.log(res);
  16. // concat方法支持自己再加上自己合并
  17. // js中數(shù)組都是引用傳遞,沒有數(shù)組克隆,改變其中一個(gè)數(shù)組的值那么另一個(gè)數(shù)組的也改變了
  18. let n = tmp1;
  19. n[0] = 10;
  20. tmp1[2] = 15;
  21. console.log(tmp1);
  22. console.log(n);
  23. // 數(shù)組克隆
  24. let [...newa] = tmp1;
  25. // newa是一個(gè)新數(shù)組,不再和tmp1有關(guān)聯(lián),
  26. newa[0] = 30;
  27. console.log(tmp1);

函數(shù)中的解構(gòu)參數(shù)

  1. // 函數(shù)中的解構(gòu)參數(shù)
  2. let setUser = function (id, userInfo) {
  3. userInfo = userInfo || {};
  4. let name = userInfo.name;
  5. let email = userInfo.email;
  6. let age = userInfo.age;
  7. return { id, email, name, age };
  8. };
  9. let user = new setUser(1);
  10. console.log(user);
  11. user = new setUser(1, { name: "admin", email: "admin@qq.com", age: 20 });
  12. console.log(user);
  13. // 用解構(gòu)參數(shù)簡(jiǎn)化
  14. // 如果對(duì)象參數(shù)不寫入默認(rèn)值那么調(diào)用時(shí)必須傳入相應(yīng)參數(shù)不然會(huì)報(bào)錯(cuò)所以可以參數(shù)傳入空對(duì)象
  15. // 也可以寫入默認(rèn)值
  16. const userinfo = {
  17. name: "admin",
  18. email: "admin@qq.com",
  19. age: 18,
  20. };
  21. setUser = function (id, { name, email, age } = userinfo) {
  22. return { id, name, email, age };
  23. };
  24. user = new setUser(1);
  25. console.log(user);
  26. // 變量交換
  27. let a = 10, b = 20;
  28. console.log("x=%d,y=%d", a, b);
  29. [a, b] = [b, a];
  30. console.log("x=%d,y=%d", a, b);

模板字面量

  1. // 傳統(tǒng)多行字符串
  2. let str = "我是第一行,\n \
  3. 我是第二行,\n \
  4. 我是第三行";
  5. // 也可以寫入數(shù)組中使用函數(shù)
  6. let str1 = [
  7. "我是第一行,",
  8. "我是第二行,",
  9. "我是第三行。",
  10. ].join("\n");
  11. console.log(str);
  12. // 如果是\n那么需要渲染到頁面中時(shí)就不會(huì)換行,所以根據(jù)需要書寫br或者\(yùn)n
  13. console.log(str1);
  14. // 傳統(tǒng)變量嵌入
  15. let list = ["蘋果", "香梨"];
  16. console.log("我喜歡吃" + list);
  17. // 模板字面量書寫多行字符串
  18. // 如果書寫多行字符串時(shí)一般第一行不書寫,后面添加trim()方法消除空格
  19. let str2 = `
  20. 我是第一行,
  21. 我是第二行,
  22. 我是第三行`.trim();
  23. console.log(str2);
  24. // 模板字面量的變量嵌入
  25. let name = "小明";
  26. console.log(`大家好呀 我叫${name},很高興認(rèn)識(shí)你們`);
  27. // 也支持函數(shù)
  28. function func(name) {
  29. return name;
  30. }
  31. console.log(`hello 我叫${func("小明")}`);
  32. // 也可以嵌套
  33. let age = 20;
  34. console.log(`hello 我叫${`${func("小明")}年齡是${age}`}`);

模板標(biāo)簽

  1. // 模板標(biāo)簽
  2. function func(name, ...email) {
  3. console.log("my name is ", name);
  4. console.log("my email is", email);
  5. }
  6. let name = "admin";
  7. let email = "admin@qq.com";
  8. func(name, email);
  9. func`${name},${email}`;
  10. let width = 27;
  11. let height = 56;
  12. let area = getarea`高為 ${height} *寬為 ${width} = 面積 ${width * height}`;
  13. function getarea(str, ...val) {
  14. let res = "";
  15. for (let i = 0; i < val.length; i++) {
  16. res += str[i];
  17. res += val[i];
  18. }
  19. res += str[str.length - 1];
  20. return res;
  21. }
  22. console.log(area);
  23. // 模板字面量獲取原始值
  24. function func1(str, ...val) {
  25. let res = "";
  26. for (let i = 0; i < val.length; i++) {
  27. res += str.raw[i];
  28. res += val[i];
  29. }
  30. res += str.raw[str.raw.length - 1];
  31. return res;
  32. }
  33. let a = func1`my name is ${name} \n my email is ${email}`;
  34. console.log(a);

總結(jié)

1.雖然百度了對(duì)于用new調(diào)用函數(shù)和不用new調(diào)用函數(shù)有什么區(qū)別,但還是沒有理解。
2.模板標(biāo)簽函數(shù)的作用是最后返回的是一個(gè)字符串是嗎?其應(yīng)用場(chǎng)景還不了解,這節(jié)課聽的有點(diǎn)懵。

批改老師:天蓬老師天蓬老師

批改狀態(tài):合格

老師批語:相同的函數(shù), 調(diào)用方式不同, 返回結(jié)果不同...如同面粉, 可以做成面包,也可以做也面條, 只是加工方式不同....
本博文版權(quán)歸博主所有,轉(zhuǎn)載請(qǐng)注明地址!如有侵權(quán)、違法,請(qǐng)聯(lián)系admin@php.cn舉報(bào)處理!
全部評(píng)論 文明上網(wǎng)理性發(fā)言,請(qǐng)遵守新聞評(píng)論服務(wù)協(xié)議
0條評(píng)論
作者最新博文
關(guān)于我們 免責(zé)申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長(zhǎng)!
關(guān)注服務(wù)號(hào) 技術(shù)交流群
PHP中文網(wǎng)訂閱號(hào)
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時(shí)隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號(hào)
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)

  • 登錄PHP中文網(wǎng),和優(yōu)秀的人一起學(xué)習(xí)!
    全站2000+教程免費(fèi)學(xué)