You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript函数实现挑战:链式调用返回拼接字符串

解决JavaScript的me()函数挑战

嘿,这个问题其实核心是利用闭包来保存第一个传入的参数,再通过返回的函数完成最终的字符串拼接。我们直接来看具体实现:

基础函数写法

最直观的实现方式用普通函数就能搞定:

function me(str1) {
  // 返回一个新函数,它会通过闭包记住外部的str1参数
  return function(str2) {
    // 将两个字符串用空格拼接后返回
    return str1 + " " + str2;
  };
}

简洁的箭头函数版本

如果偏好更精简的代码,用箭头函数可以一行实现:

const me = str1 => str2 => `${str1} ${str2}`;

验证效果

我们来测试题目里的两个判断条件:

var isSame1 = me("123")("321") === "123 321"; // 结果为true
var isSame2 = me("321")("123") === "321 123"; // 结果为true

完全符合要求!当你调用me("123")时,返回的函数会通过闭包保留住str1的值为"123";后续调用这个返回的函数传入"321"时,就会把两个值按要求拼接成目标字符串。

内容的提问来源于stack exchange,提问作者Gerneio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:37:42