这里为什么在function里面d都是3,只有function能改变作用域是什么意思?

这里为什么在function里面d都是3,只有function能改变作用域是什么意思?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕夭夭 2018-05-31 14:46:39

1.for循环会循环完毕返回最后一次循环的结果 , 所以输出的结果永远是最后一次的值 .

2.window是全局作用域 , js中声明一个函数(function) , 函数里面的作用域是自身的局部作用域 , 例如函数内部的变量不能在全局下使用 , 所以函数改变了作用域哦

希望能解答你的疑惑 ,祝学习愉快 !


  • 可以解释一下循环运行的过程吗 没有点击事件触发的时候,循环会向下走,但当点击操作的时候去运行function函数里面的语句,这个时候的参数不应该是循环变量吗,为什么一定是跳出循环的值。还有就是,最外面的函数slideImg()是相当于中断一直听着DOM事件吗 谢谢
    2018-07-29 13:28:43
  • 因为点击事件是要用户点击时才会触发的 ,页面打开时页面中for循环运行 , 此时for循环中的congsole.log会按照顺序输出内容 , 然后返回来最后一次的结果 ,所以当用户点击时for循环已经循环完毕 , alert会输出一样的结果 . 函数slideImg()是对代码进行了封装 , 然后在全局下调用slideImg()就能执行里面的内容了 , 便于管理而已哦
    2018-07-30 09:57:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师