我不明白var insert = value => () 加这个小括号是什么意思?

我不明白var insert = value => () 加这个小括号是什么意思?

 var insert = value => ({

        into : array => ({

            after :afterValue => {

                array.splice(array.indexOf(afterValue) + 1, 0, value)

                

                    return array

            }

        })

    })

    document.write(insert(2).into([1, 3]).after(1));


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

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

2回答
好帮手慕言 2019-11-09 17:25:56

同学你好,使用括号将箭头函数的内容作为一个整体包裹起来, 可以看做箭头函数中只有一条语句。 根据箭头函数的写法, 只有一条语句的时候, 默认在这条语句前添加了一个return作为函数返回值。所以才可以使用链式调用的方式。

示例: 可以打印一下调用insert函数的返回结果

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

打印结果如下所示, 返回的一个对象, 里面有into函数, 所以可以继续使用insert2(2).into([1, 3])的写法调用into函数。

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

after也是同样的道理哦

如果不想添加(), 可以给函数手动添加return关键字, 返回一个对象哦。 示例:

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

如果还有其他疑问,建议在问答区重新提问,便于后期查找总结

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

好帮手慕言 2019-11-09 15:08:38

同学你好,这个是箭头函数的一种写法,同学记住就可以了。

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

  • 提问者 慕斯0507114 #1
    箭头函数不是var insert = (value) => {} 这样么? 那要为什么这样呢var insert = (value) => ({})呢?
    2019-11-09 15:10:48
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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