首页 > 作文

【ECMAScript 5

更新时间:2023-04-07 12:19:34 阅读: 评论:0

一、箭头函数

* 作用: 定义匿名函数* 基本语法: 租房合同协议下载 * 没有参数: () => console.log('xxxx')  * 一个参数: i => i+2  * 大于一个参数: (i,j) => i+j  * 函数体不用大括号: 默认返回结果  * 函数体如果有多个语句, 需要用{}包围,若有需要返回的内容,需要手动返回* 使用场景: 多用来定义回调函数* 箭头函数的特点:    1、简洁    2、箭头函数没有自己的this,箭头函数的this不是调用的时候决定的,而是在定义的时候处在的对象就是它的this    3、扩展理解: 箭头函数的this看外层的是否有函数,  伤感心情      如果有,外层函数的this就是内部箭头函数的this,        如果没有,则this是window
<!DOCTYPE html><html lang="en"><head>  <meta chart="UTF-8">  <title>06_箭头函数</title></head><body>    <button id="btn1">测试箭头函数this_1</button>    <button id="btn2">测试箭头函数this_2</button>    <button id="btn3">测试箭头函数this_3</button>    <button id="btn4">测试箭头函数this_4</button><script type=列子汤问"text/javascript">  /* ES5写法:  let fun = fu高行建nction () {    console.log('fun()')  }  fun()  */  /* ES6箭头函数写法:  let fun = () => console.log('fun()')  fun()  */  // 按左边形参情况分类:  //1.没有形参  let fun1 = () => console.log('fun1()')  fun1()  //2.只有一个形参的时候:()可以省略  let fun2 = a => console.log('fun2()')  fun2()  //2.两个及两个以上的形参的时候:()不可以省略  let fun3 = (x,y) => cosaturday怎么读nsole.log(x + y)  fun3(10,20)  // 按右边函数体情况分类:  //1.函数体只有一条语句或表达式的时候:{}可以省略,会自动返回语句执行的结果或者是表达式的结果(加了{},则需要return返回)  let fun4 = (x,y) => x+y  console.log(fun4(100,200))  /*let fun4 = (x,y) => {    return x+y  }  console.log(fun5(100,200))*/  //2.函数体有两条及以上的语句或表达式的时候:{}不可以省略  let fun5 = (x,y) => {    console.log(x,y)    return x + y  }  console.log(fun5(1000,2000))  //箭头函数的特点:没有自己的this,箭头函数的this不是调用的时候决定的,而是在定义的时候处在的对象就是它的this  let btn1 = document.getElementById('btn1')  let btn2 = document.getElementById('btn2')  let btn3 = document.getElementById('btn3')  let btn4 = document.getElementById('btn4')  btn1.onclick = function () {    alert(this)  // 正常函数内this指向调用他的函数,这里是HTMLButtonElement  }  btn2.onclick = () => {    alert(this)  // 箭头函数this指向处在的对象,这里看外层是否有函数,没有就是window  }  let obj = {    tClick:function () {      btn3.onclick = () => {        alert(this)  // 箭头函数的this看外层的是否有函数,这里有,内部箭头函数的this等于外层函数的this指向调用它的obj      }    }  }  obj.tClick()  let obj1 = {    tClick: () => {      btn4.onclick = () => {        alert(this)  // 箭头函数的this看外层的是否有函数,这里没有,内部箭头函数的this则指向window      }    }  }  obj1.tClick()  function Person() {    this.obj = {      showThis : () => {        console.log(this);  // Person{}      }    }  }  let fun6 = new Person();  fun6.obj.showThis();</script></body></html>

本文地址:https://blog.csdn.net/edc3001/article/details/85962949

本文发布于:2023-04-07 12:19:32,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/d035cb25084fec57d6451030837933a3.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:【ECMAScript 5.doc

本文 PDF 下载地址:【ECMAScript 5.pdf

标签:函数   箭头   外层   语句
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图