Uncaught SyntaxError:意外的令牌函数
JS callback error: Uncaught SyntaxError: Unexpected token function
我正在学习JS,并阅读函数可以作为参数传递给任何其他变量。在下面的代码中,当我传递匿名函数作为参数时,它给出了"Uncaught SyntaxError: Unexpected token function"
var x;
function myfun(x, function(x) {
console.log("Value of x is: "+ x );
});
myfun(2,4);
我对知道错误背后的逻辑更感兴趣。我做错了什么?
谢谢bt
在您的代码中,您似乎试图声明两个函数,一个名为myfun
,它接受两个参数,另一个未命名(匿名)函数,它接受一个参数。你的代码中似乎有两个语法错误:(1)函数myfun
没有函数体,(2)你在myfun
的参数列表中声明了一个函数。
让我们先声明两个函数(给第二个函数一个名字,给myfun
一个函数体):
function myfun(x, functionToBeCalled) {
functionToBeCalled(x);
}
function functionToBePassed(x) {
console.log("Value of x is: "+ x );
}
现在,我们可以调用函数myfun
并向其传递两个参数,一个是x
的值,另一个是在myfun
中调用的函数functionToBePassed
:
myfun(2, functionToBePassed);
如果您希望匿名传递第二个函数,请在调用 myfun
函数时声明该函数,而不是在声明 myfun
:
//declare myfun
function myfun(x, functionToBeCalled) {
functionToBeCalled(x);
}
//call myfun and pass a function as an argument
myfun(2, function(x) {
console.log("Value of x is: "+ x );
});
如果你想传递一个匿名函数作为参数,你必须至少指定它的参数名。因此,当该参数为 undefined
时,它被赋值了这个函数,但我们不能确定是否会收到一个函数,所以最好设置一个条件。
示例设置fnc
参数的默认值。这是一个新的浏览器实现。
function myfun(x, fnc = function(x) {
console.log("Value of x is: " + x)
})
{
/* block statement is always required in a function declaration */
fnc(x)
}
示例-检查b
是否为函数
function myfun(x, fnc)
{
typeof fnc !== 'function' && (fnc = function(x) {
console.log("Value of x is: " + x)
})
fnc(x)
}
但是你要做的是:
function myfun(x) {
console.log("Value of x is: " + x)
}
您只需要使用 {...}
直接声明块语句。
相关文章:
- 函数返回错误'令牌{'
- HTML 无法识别我要求它运行的 javascript 文件,语法错误:意外的令牌“<”(匿名函数)script.js:
- PHP调用脚本函数,返回值为Uncaught SyntaxError:意外的令牌ILLEGAL
- 尝试用 JSON 编写函数,在函数调用中获取“意外令牌”
- reactJS - 函数内映射上的意外令牌
- 未捕获的语法错误:意外的令牌,将多个变量传递给javascript函数
- 调用函数时出现意外的令牌 } 错误
- 使用 AJAX 的函数抛出“意外令牌 }”,Chrome 控制台
- 未捕获的语法错误:控制台上出现意外的令牌<(匿名函数)
- .css函数意外令牌非法 jquery
- '意外的令牌'箭头函数返回的对象中存在语法错误
- JS主题中出错:意外的令牌函数
- React Native呈现函数给出错误:意外的令牌
- TypeScript-NodeJS-意外的令牌'构造函数、函数、访问器或变量'
- 在回调中调用函数时出现意外的令牌错误
- JS函数中出现意外的令牌错误
- 主干渲染函数:意外令牌非法
- onClick函数导致"未捕获的SyntaxError:意外的令牌}"错误
- Uncaught SyntaxError:意外的令牌函数
- Javascript (node)错误:意外的令牌函数