let关键字,const关键字,变量的解构赋值,模版字符串

let关键字

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>01_let关键字</title>

</head>

<body>

<button>测试1</button>

<br>

<button>测试2</button>

<br>

<button>测试3</button>

<br>

<!--

***let

1. 作用:

  * 与var类似, 用于声明一个变量

2. 特点:

  * 在块作用域内有效

  * 不能重复声明

  * 不会预处理, 不存在变量提升(预处理、预加载、预解析)

3. 应用:

  * 循环遍历加监听

  * 使用let取代var是趋势

-->

<script type="text/javascript">

  // console.log(username);//当下一行是let时,没有预解析,会报错    当下一行是var时,不会报错,但值是undefined

  let username = 'kobe';//

  // let username = 'wade';//不能重复定义

  // console.log(username);

  //循环遍历加监听

  let btns = document.getElementsByTagName('button');//获取三个btn

  for(var i=0; i<btns.length;i++){

    var btn = btns[i];//——> 拿到其中的一个btn = btns的下标为i的元素

    // 无法获取正确的索引

    btn.onclick = function() {

      alert(i);

    };

    //方法一:把for(var i=0; i<btns.length;i++)里的var换为let

    /*方法二:闭包的方式解决

    (function (i) {

      btn.onclick = function () {

        alert(i);

      }

    })(i);//利用闭包的原理,后面带括号,就是要立即执行

    */

  }

</script>

</body>

</html>

const关键字

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>02_const关键字</title>

</head>

<body>

<!--

1. 作用:

  * 定义一个常量

2. 特点:

  * 不能修改

  * 其它特点同let

3. 应用:

  * 保存不用改变的数据

-->

<script type="text/javascript">

// var KEY = 'NBA';//var可修改

// KEY = 'CBA';

// console.log(KEY);//CBA

const KEY = 'NBA';//const不可修改

// KEY = 'CBA';//当为把var换成const时,不能写,会报错

console.log(KEY);

</script>

</body>

</html>

变量的解构赋值

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>03_变量的解构赋值</title>

</head>

<body>

<!--

1. 理解:

  * 从对象或数组中提取数据, 并赋值给变量(变量可多个)

2. 对象的解构赋值

  let {n, a} = {n:'tom', a:12}

3. 数组的解构赋值

  let [a,b] = [1, 'hello'];

4. 用途

  * 给多个形参赋值

-->

<script type="text/javascript">

let obj = {username: 'kobe', age: 40};

// let username = obj.username;

// let age = obj.age;

// let xxx = obj.xxx;//undefined

// 对象的解构赋值

// 在解构赋值的时候,大括号里左边向右边要值的时候,必须是obj里已有的属性才可以,没有的话,返回的是undefined

// let {username, xxx} = obj;//相当于let xxx = obj.xxx;//undefined

// let {username, age} = obj;//相当于let age = obj.age;

// console.log(username, age);//kobe  40   意味着username和age是全局变量

// 当不想全要时,例如:只要年龄

let {age} = obj;//声明了一个全局变量age

console.log(age);

//数组的解构赋值

let arr = [1,3,5,'abc',true];

// let [a,b,c,d,e] = arr;//全局定义了5个变量

// console.log(a,b,c,d,e);

// let [a,b] = arr;

// console.log(a,b);//1  3

let [,,a,b] = arr;

console.log(a,b);//5  'abc'

//多个形参来赋值

// function foo(obj){

//   console.log(obj.username, obj.age);

// }

function foo({username, age}){//{username, age} = obj;

  console.log(username, age);

}

foo(obj);//kobe  40

</script>

</body>

</html>

模版字符串

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>04_模板字符串</title>

</head>

<body>

<!--

1. 模板字符串 : 简化字符串的拼接

  * 模板字符串必须用 `` 包含

  * 变化的部分使用${xxx}定义

-->

<script type="text/javascript">

let obj = {username: 'kobe', age: 40};

//方式一:

// let str = '我的名字叫:' + obj.username + ',我的年龄:' + obj.age;

//方式二:(简单)

str = `我的名字叫:${obj.username},我的年龄:${obj.age}`;

console.log(str);//我的名字叫:kobe,我的年龄:40

// `https://s.taobao.com/search?q=${obj.xx}&refpid=${obj.xx}&source=${obj.xx}&style=${obj.xx}&pvid=${obj.xx}&clk1=${obj.xx}&spm=${obj.xx}`

</script>

</body>

</html>

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341

推荐阅读更多精彩内容