我想编写一个函数once,接受回调作为输入并返回一个函数.当第一次调用返回的函数时,它应该调用回调并返回该输出.如果它被调用任何额外的时间,而不是再次调用回调,它将只是从第一次调用时返回输出值.
以下是我试图做的事情.但我没有按照我的预期得到结果.我需要理解这个概念.
function once(func) {
let num;
function retFunc(x){
num = func(x);
return num;
}
return retFunc;
}
function addByTwo(input){
return input + 2;
}
var onceFunc = once(addByTwo);
console.log(onceFunc(4)); //should log 6
console.log(onceFunc(10)); //should log 6
console.log(onceFunc(9001)); //should log 6
Run Code Online (Sandbox Code Playgroud) 我只想知道以下代码是否遵循BEM方法最佳实践?为块修饰符创建元素,即在这种情况下,"block - mod"是"块"块的修饰符.是否允许使用此模式创建嵌套元素:"block - mod__elm".
<div class="block block--mod">
<div class="block__elm block--mod__elm">
</div>
Run Code Online (Sandbox Code Playgroud)