JS中的闭包应用

js 复制代码
/**
 * @param {string} val
 * @return {Object}
 */
var expectFn = function (val) {
  // TODO
  return {
    toBe(_val) {
      return val === _val || "Not Equal";
    },
    notToBe(_val) {
      return val !== _val || "Equal";
    }
  };
};

// console.log(expectFn(5).toBe(5)); // true
// console.log(expectFn(5).notToBe(5)); // "Equal"

module.exports = expectFn;

return { ... };

这是 expectFn 函数的核心,它返回一个对象(Object)。

这个对象包含了两个方法:toBe 和 notToBe。这意味着可以像 expectFn(5).toBe(5) 这样链式调用。

运用闭包(toBe 和 notToBe 能够访问 expectFn 的 val 参数)和短路逻辑运算符 (||)

相关推荐
qq_177767372 分钟前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos
一匹电信狗4 分钟前
【LeetCode_21】合并两个有序链表
c语言·开发语言·数据结构·c++·算法·leetcode·stl
烬头88215 分钟前
React Native鸿蒙跨平台应用实现了onCategoryPress等核心函数,用于处理用户交互和状态更新,通过计算已支出和剩余预算
前端·javascript·react native·react.js·ecmascript·交互·harmonyos
2401_8384725130 分钟前
C++中的访问者模式
开发语言·c++·算法
csbysj202041 分钟前
《Foundation 开关:深度解析其原理与应用》
开发语言
梦里小白龙1 小时前
java 通过Minio上传文件
java·开发语言
m0_561359671 小时前
基于C++的机器学习库开发
开发语言·c++·算法
星空露珠1 小时前
速算24点所有题库公式
开发语言·数据库·算法·游戏·lua
2401_832402751 小时前
C++中的类型擦除技术
开发语言·c++·算法
努力学习的小廉2 小时前
我爱学算法之—— 递归回溯综合(二)
开发语言·算法