前端经典面试题解密-add(1)(2)(3)(4) == 10到底是个啥?

本文介绍了前端面试中常见的题目——add(1)(2)(3)(4)返回10的原理,讲解了函数柯里化的概念,并提供了两种不同场景的柯里化解决方案。同时,文章还分享了相关的前端视频教程资源。
摘要由CSDN通过智能技术生成

写在前面:本期教程算是个经常会遇到的面试题,更多的前端视频教程也会继续给大家出,文末有给大家总结有相关的视频学习教程,大家按需自行学习哈!不全的地方,大家可以留言或私我,我再发。

前端的小伙伴在面试的时候,几乎都会遇到一道这样的面试题: add(1)(2)(3)(4)输出结果为10。在第一次看到这道面试题的时候,很多小伙伴感到了迷茫!借用王宝强在《人在囧途》中的表演:啥啥啥,这写的都是啥?下面为各位小伙伴带来这道题的揭秘。

前端经典面试题解密-add(1)(2)(3)(4) == 10到底是个啥?

 

一、核心点-基础函数的变种-函数柯里化

我们从0开始,一点点儿的观察。add(1)(2)(3)(4)输出的值怎么成为10,很简单,大家都明白是1+2+3+4的累加。那使用基础函数是怎么实现的呢?

function add (a, b, c, d) {
	return a + b + c + d
}
add(1, 2, 3, 4) // 10

那如何add(1)(2)(3)(4)如何也输出10呢?小伙伴接下来可能会想到这样:

function add (a) {
	return function (b) {
		return function (c) {
			return function (d) {
				return a + b + c + d
		
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值