SyntaxError: missing ) 在 JavaScript 中的参数列表之后
SyntaxError: missing ) after argument list in JavaScript
“SyntaxError: missing ) after argument list”当我们在调用一个函数时出现语法错误时发生,例如忘记用逗号分隔它的参数。
要解决该错误,请确保更正函数调用的参数列表中的任何语法错误。
以下是错误发生方式的一些示例:
索引.js
// ⛔️ Uncaught SyntaxError: missing ) after argument list console.log('a' 'b'); // 👈️ forgot comma or + // ----------------------------------------------------- // ⛔️ Uncaught SyntaxError console.log('Metadata: ' + ${data}); // 👈️ using ${} without template strings // ----------------------------------------------------- function sum(a, b) { return a + b; } // ⛔️ Uncaught SyntaxError sum(10 15); // 👈️ forgot comma between arguments // ----------------------------------------------------- const country = 'Chile'; const age = 30; // ⛔️ Uncaught SyntaxError console.log(country age); // 👈️ forgot comma or plus between arguments // ----------------------------------------------------- // ⛔️ Uncaught SyntaxError console.log("a", "B" // 👈️ forgot the closing ) when calling function
第一个示例显示当我们忘记在函数调用的参数之间添加逗号或
加法运算符 (+)时如何抛出错误。
索引.js
// ⛔️ Uncaught SyntaxError: missing ) after argument list console.log('a' 'b'); // 👈️ forgot comma or +
要解决该错误,请确保更正函数调用的参数列表中的任何语法错误。
索引.js
console.log('hello' + ' world'); // 👈️ use + operator console.log('hello'.slice(0, 2)); // 👈️ separate arguments by comma
如果需要连接字符串,请使用加法 (+) 运算符。
索引.js
console.log('hello ' + 'world'); // 👉️ hello world console.log('age: ' + String(30)); // 👉️ age: 30
如果需要向函数传递多个参数,请用逗号分隔它们。
索引.js
console.log('hello'.slice(0, 2)); // 👉️ 'he'
如果您无法确定错误发生的位置,请查看浏览器控制台或终端(如果使用 Node.js)中的错误消息。
上面的截图显示错误是在index.js
line 的文件中抛出的19
。
这是错误如何发生的另一个示例。
索引.js
function sum(a, b) { return a + b; } // ⛔️ Uncaught SyntaxError: missing ) after argument list sum(10 15); // 👈️ forgot comma between arguments
要解决该错误,请在函数的参数之间添加一个逗号。
索引.js
function sum(a, b) { return a + b; } const result = sum(10, 15); console.log(result); // 👉️ 25
确保终止你的字符串文字
如果您有一个字符串,您在其中混淆了双引号和单引号,最好使用模板文字,这是一个用反引号 (“) 分隔的字符串。
索引.js
// ⛔️ don't do this const str1 = 'it\'s him'; // ✅ alternate quotes const str2 = "it's him" // ✅ template literal const str3 = `it's him` // ✅ a template literal with a variable const num = 42; const str4 = `The number is ${num}`; console.log(str4); // 👉️ The number is 42
模板文字使用反引号包裹字符串,因此可以在字符串的内容中同时使用单引号和双引号而不会出现任何错误,也不必转义
任何单引号或双引号。
确保你没有遗漏任何圆括号或方括号
这是错误如何发生的另一个示例。
索引.js
// ⛔️ SyntaxError: missing ) after argument list console.log("a", "B" // 👈️ forgot the closing ) when calling function
添加右括号以解决错误。
索引.js
console.log("a", "B")
错误的一个常见原因是缺少或多余的括号、方括号、花括号、逗号、冒号或引号。
您可以在浏览器选项卡或 Node.js 终端中查看错误消息Console
,以了解错误发生在哪一行。