为什么 js.slideLeftRight.show = js._customShow; 会报错?

为什么 js.slideLeftRight.show = js._customShow; 会报错?

js._customShow 是函数,但为什么 js.slideLeftRight.show = js._customShow; 会报错?

正在回答

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

2回答

同学你好, 按着同学的写法,直接在js对象中定义show方法的时候,将_customShow赋给show。由于js是按着代码书写顺序从上到下执行的,此时的customshow方法还没有定义,所以会报错

http://img1.sycdn.imooc.com//climg/5d63896a0001b46708490717.jpg

使用视频中老师的方法,show: function($elem){ js._customShow($elem); } 表示在调用show方法时候,才执行customshow方法, 此时已经可以访问该方法了

以及老师第一次回答中的方式, 也是在customshow方法声明之后才将其赋值给show的哦

同学可以结合代码在试着理解一下哦

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~

  • Carol246 提问者 #1
    哦哦哦这样啊,谢谢老师~~
    2019-08-26 16:44:04
好帮手慕慕子 2019-08-26 10:10:16

同学你好, 不是很清楚同学这句代码是要写在哪里呢?

老师这边测试在源码中测试, 直接在js._customshow函数赋值给js.slideLeftRight.show运行代码是不会报错的哦, 示例:

http://img1.sycdn.imooc.com//climg/5d633f1d000142a806620800.jpg

http://img1.sycdn.imooc.com//climg/5d633f4200016f0a11290602.jpg

http://img1.sycdn.imooc.com//climg/5d633f4c0001032202800169.jpg

同学可以自己下去测试一下哦,如果还有问题, 可以将你写的代码直接粘贴过来, 便于老师准确高效的为你解决问题

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~

  • 提问者 Carol246 #1
    老师,我写的代码是 show: js._customShow; 然后报错“_customShow 未定义”,但改成原来的代码就可以正常运行,是哪里出了问题呀?是一定要写成 show: function($elem){ js._customShow($elem); } 吗?
    2019-08-26 11:45:02
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

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

在线咨询

领取优惠

免费试听

领取大纲

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