当前位置: 首页 > news >正文

郑州专业网站建设公司洛阳市网站建设

郑州专业网站建设公司,洛阳市网站建设,怎样建独立域名的网站,java和php做网站它们之间的区别: (1)箭头函数没有自己的this。 (2)不可以当作构造函数,不可以对箭头函数使用new命令,否则抛出错误。 (3)不可以使用arguments对象,该对象在函…

它们之间的区别:
(1)箭头函数没有自己的this。
(2)不可以当作构造函数,不可以对箭头函数使用new命令,否则抛出错误。
(3)不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替。
(4)不可以使用yield命令,箭头函数不能用作 Generator 函数。

下面结合代码来解析:第一点和第二点

1、不可以当作构造函数,也就是说,不可以对箭头函数使用new命令,否则会抛出一个错误

<script>
//箭头函数
let demo01 = ()=>{console.log("demo01");
}let demo01Fun =new demo01();</script>

输出结果:
在这里插入图片描述

<script>
//普通函数
function demo02(){console.log("demo02");
}let demo02Fun =new demo02();</script>

在这里插入图片描述

2、箭头函数没有自己的this对象
下面代码通过call函数给函数指定了this{id:42}

<script>function demo01() {//箭头函数setTimeout(() => {console.log('id:', this.id);}, 100);
}var id = 21;demo01.call({ id: 42 });</script>

输出结果:
在这里插入图片描述
但是同样是调call函数指定this{id:42},为何输出的却是全局中id= 21呢?

<script>//普通函数function demo02() {setTimeout(function () {console.log('id:', this.id);}, 100);}var id = 21;demo02.call({ id: 42 });</script>

在这里插入图片描述
下面给代码加上断点调试一下看看:

<script>//普通函数function demo02() {debugger;setTimeout(function () {debugger;console.log('id:', this.id);}, 100);}debugger;var id = 21;demo02.call({ id: 42 });
</script>

代码运行到第一个断点时,Global中存在id=21
在这里插入图片描述
代码运行到第二断点处,此时出现方法demo02的局部变量Local,this指向的是{id:42}
在这里插入图片描述
代码运行到定时器时,this指向的windows,id=21。
在这里插入图片描述
而定时器中是箭头函数的,这时this指向的{id:42},从这可以看出箭头函数继承了调用它时的this。
也就是:
它没有自己的this对象,内部的this就是定义时上层作用域中的this。也就是说,箭头函数内部的this指向是固定的,相比之下,普通函数的this指向是可变的。

箭头函数没有this,箭头函数的ES5等价写法如下:

// ES6
function foo() {setTimeout(() => {console.log('id:', this.id);}, 100);
}// ES5
function foo() {var _this = this;setTimeout(function () {console.log('id:', _this.id);}, 100);
}

思考题:
请问下面的t1、t2、t3分别输出什么?

function foo() {return () => {return () => {return () => {console.log('id:', this.id);};};};
}var f = foo.call({id: 1});var t1 = f.call({id: 2})()(); 
var t2 = f().call({id: 3})(); 
var t3 = f()().call({id: 4}); 
http://www.yidumall.com/news/9435.html

相关文章:

  • 乌鲁木齐建设工程招标信息网东莞网络排名优化
  • 南京做网站企业国内搜索引擎排行榜
  • 服务网站建设排行推广运营
  • 做网站还 淘宝上海seo优化服务公司
  • 桂平做网站公司美国婚恋网站排名
  • 公众号兼职网站开发百度网盘下载速度
  • wordpress 图片下一页百度seo优化系统
  • 网站建设公司有哪优化一个网站需要多少钱
  • 做云盘网站哪个好怎么做百度搜索排名
  • 网站优化外包网站搜索排名优化价格
  • 微信h5网站开发网络推广方法有哪几种
  • 歪歪小站 wordpress网络营销的成功案例分析
  • 搭建网站代码网页设计与制作学什么
  • 帝国cms 网站名称标签山西seo
  • 网站参数修改百度云搜索引擎
  • 广告设计样板图太原百度seo
  • 男做暧免费视频网站网站友情链接
  • 优设网页设计网站淄博网站推广
  • 企业查询卡上海哪家优化公司好
  • 网站seo怎么填写搜索引擎网站提交入口
  • 腾讯云可以做网站一个新手怎么做电商
  • 网站商城微信支付接口申请域名注册查询
  • 做幼儿手工网站他达那非片能延时多久
  • 企业门户网站怎么做百度下载安装免费版
  • 珠海logo设计电商seo优化是什么意思
  • 周口网站开发中国电信视频app下载
  • 设计与制作网站如何做好线上推广
  • 漳浦县城乡规划建设局官方网站免费发布推广的网站
  • 科普网站建设新闻头条今日要闻
  • 如何做简易的网站搜索引擎推广与优化