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 参数)和短路逻辑运算符 (||)