社区
JavaScript
帖子详情
es6 箭头函数不能提升?
高手坟墓丶
2017-01-03 09:41:53
myFun();
var myFun= () => {console.log("1")}
结果出错了,各位大牛们难道箭头函数不像普通函数那样可以先使用后定义吗?
//Uncaught TypeError: myFun is not a function(…)
...全文
627
3
打赏
收藏
es6 箭头函数不能提升?
myFun(); var myFun= () => {console.log("1")} 结果出错了,各位大牛们难道箭头函数不像普通函数那样可以先使用后定义吗? //Uncaught TypeError: myFun is not a function(…)
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
高手坟墓丶
2017-01-04
打赏
举报
回复
谢谢大家,我知道了,箭头函数就是匿名函数,所以需要先声明再使用
结贴了
似梦飞花
2017-01-04
打赏
举报
回复
var myFun= () => {console.log("1")} 你把箭头函数换成function也一样出错啊 你这里是匿名函数赋值给变量 变量先提升后才赋值的 所以一定不行啊
天际的海浪
2017-01-03
打赏
举报
回复
js程序的执行分为函数和变量的声明阶段 与 执行阶段 两个阶段 函数和变量的声明阶段 会先于 执行阶段 进行。 普通函数就是在声明阶段创建的。 箭头函数属于匿名函数,匿名函数是要通过赋值语句赋值给变量,这个赋值的过程是在代码执行阶段进行的,不是在声明阶段,所以没有函数声明提升的特性。
es6
let和const还有
箭头函数
es6
let和const跟var的区别? 1.变量
提升
问题 在es5中var存在变量
提升
的问题(将变量
提升
到作用域的最顶部)。即变量可以在生病之前调用值问未定义(undefined) let和const不存在变量
提升
。即它们所声明的变量一定在声明后使用,否则报ReferenceError的粗 2.暂时性死区 let和const都存在暂时性死区。即只要块级作用域内存在let命令,它所声明的变量就“绑定”这个区域不受外部的影响。 在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上称为“暂
es6
学习2:let、const 、
箭头函数
let 允许创建块级作用域,let 声明的变量只在 let 命令所在的代码块内有效。var a = 2;let a = 3;let b = 5;var c = 1;// 3// 2//1const 声明一个只读变量,声明之后不允许改变。意味着,一旦声明必须初始化,否则会报错。if(true){
ES6
明确规定,代码块内如果存在 let 或者 const,代码块会对这些命令声明的变量从块的开始就形成一个封闭作用域。代码块内,在声明变量 PI 之前使用它会报错。
ES6
中的
箭头函数
和普通函数有什么区别?
ES6
中的
箭头函数
和普通函数有什么区别? 1、普通函数的 this 永远指向调用它的那个对象(谁调用,this 就指向谁)
箭头函数
没自己的 this,它的 this 永远指向其定义环境,任何方法都
不能
改变其指向,如 call()、bind()、apply()等。(正因为它没有 this,所以也就
不能
用作构造函数,也没有原型对象)。 2、
箭头函数
不能
当做构造函数,也就是说,
不能
使用 new 命令,否则会报错。 3、
箭头函数
没有原型属性。 4、
箭头函数
不能
使用 arguments 对象,该对象在函数
ES6
学习笔记(2)
箭头函数
在学习
箭头函数
之前要先了解的是
箭头函数
解决了什么问题。 在这里要注意的是js的严格模式 因为使用babel进行打包的文件是在严格模式下运行的,所以在一些条件下跟我们在一些书上看到的观测到的实际上可能有一点的不同。 这里要注意的是 在严格模式下,this
不能
被指定为window,也就是在全局下的 function fnc(clg this.z) 将不会输入undefined,而是直接报错
【前端】
ES6
箭头函数
《
ES6
标准入门》章节学习
JavaScript
87,984
社区成员
224,681
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章