Ale*_*lin 2 javascript scope function
我有一个SCOPE问题.当我在函数外面声明"var text"时,一切正常.但是在函数内部它只在第一部分起作用.这就是我的意思:
这是一个缓冲功能.执行缓冲区("任何东西")保存"任何东西".执行buffer() - 没有属性将返回所有属性.
但是"文本"的范围是错误的,它不会返回保存的属性.
function makeBuffer() {
var text = "";
if (arguments.length != 0) {
for (let i = 0; i < arguments.length; i++) {
console.log(`Adding argument - (${arguments[i]})`);
text += arguments[i];
console.log(`New text - (${text})`);
}
} else {
console.log(`text - (${text})`);
return text;
}
}
var buffer = makeBuffer;
buffer("One", "Two");
document.write(buffer());Run Code Online (Sandbox Code Playgroud)