老师我注释的那个this[name]=fn;是什么意思

老师我注释的那个this[name]=fn;是什么意思

    var OperationMethod = {

            //加法

            add: function (num1, num2) {

                calculatorElem.res.innerHTML = +calculatorElem.num1Ele.value + +calculatorElem.num2Ele.value;

            },

            //减法

            subtract: function (num1, num2) {

                calculatorElem.res.innerHTML = calculatorElem.num1Ele.value - calculatorElem.num2Ele.value;

            },

            //乘法

            multily: function (num1, num2) {

                calculatorElem.res.innerHTML = calculatorElem.num1Ele.value * calculatorElem.num2Ele.value;

            },

            //除法

            divide: function (num1, num2) {

                calculatorElem.res.innerHTML = calculatorElem.num1Ele.value / calculatorElem.num2Ele.value;

            },

            addOperation:function(name,fn){

               if(!this[name]){

           //这里的this[name]=fn;是什么意思      

this[name]=fn;

               }


                

        }


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

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

2回答
好帮手慕言 2020-07-26 18:32:28

同学你好,理解的是正确的,继续加油,祝学习愉快~

好帮手慕言 2020-07-26 14:59:06

同学你好,addOpetation方法中有两个参数,第一个是名称,第二个是函数,例如:下方name就是mod,fn对应着红框中的函数

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

addOpetation方法中判断,operation对象中是否存在name方法,如果不存在就添加上这个方法,并且将传入的fn赋值,这样就存在了name这个方法。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • 提问者 贾海洋 #1
    this[name]=fn;是意思是不是在对象operation中创建一个为name的函数函数体是fn
    2020-07-26 15:03:59
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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