×

寻找错误“SyntaxError: missing variable name”的真因

作者:Terry2023.01.13来源:Web前端之家浏览:293评论:0
关键词:js

今天在写一个项目的时候,突然发现一个奇怪的问题,在调试器里console提示:SyntaxError: missing variable name。我也查了下资料,发现是定义变量的问题啊,不够细心啊!接下来分享下相关信息。

错误提示

SyntaxError: missing variable name (Firefox)
SyntaxError: Unexpected token = (Chrome)


错误类型

SyntaxError

SyntaxError(语法错误)对象代表尝试解析不符合语法的代码的错误。当 Javascript 引擎解析代码时,遇到了不符合语法规范的标记(token)或标记顺序,则会抛出 SyntaxError

SyntaxError 是一个可序列化对象,所以可以使用 structuredClone() 对它进行克隆,也可以使用 postMessage() 在 Worker 之间拷贝它。

哪里出错了?

缺失变量名。这有很大的可能性是由你的代码中的语法错误造成的。也许是什么地方的逗号出了问题,或者是你正在绞尽脑汁想一个合适的名字。完全可以理解!为变量起名确实让人头疼。

示例

变量名缺失

var = "foo";

为变量起一个合适的明确确实不是一件容易的事情。这种经历每个人都遇到过。

var ohGodWhy = "foo";

保留字不能作为变量名

有一些名称是作为保留字而存在的。不好意思,你不能使用!

var debugger = "whoop";// SyntaxError: missing variable name

一次性声明多个变量

在一次性声明多个变量的时候要特别留意逗号。看看是否有多余的逗号?以及是否不小心把逗号用作了分号?

var x, y = "foo",
var x, = "foo"

var first = document.getElementById('one'),
var second = document.getElementById('two'),

// SyntaxError: missing variable name

修复后的代码:

var x, y = "foo";
var x = "foo";

var first = document.getElementById('one');
var second = document.getElementById('two');

数组

在 JavaScript 中 Array 字面量需要使用方括号将值包裹起来。下面这样是不对的:

var arr = 1,2,3,4,5;
// SyntaxError: missing variable name

这样写才是正确的:

var arr = [1,2,3,4,5];

总结

这种错误看上去很低级吧,所以我们在写代码的时候,需要多细心的哟。

您的支持是我们创作的动力!
温馨提示:本文作者系Terry ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接:
https://www.jiangweishan.com/article/jsstudy20230113.html

网友评论文明上网理性发言 已有0人参与

发表评论:

最新留言

  • jianj

    node看上有点复杂...

  • 访客

    正好遇到,谢谢分享...

  • jimmy

    这个很有趣,国内SEO更多的是百度...

  • jenny

    VUE的总结的不错啊,收藏了。下次搞点React的啊...

  • jenny

    win7最经典,想当初win8出来后都没它好用,怀恋经典。。。...

  • Terry

    谢谢提醒,插件已经修复。...

  • 访客

    士大夫士大夫...

  • 访客

    用這甚麼顏色...

首页|JavaScript|HTML|HTML4|HTML5|CSS3|开发工具|性能优化|移动开发|前端教程|性能优化|开发工具|酷站欣赏|UI设计|前端教程

Copyright © 2023 Web前端之家(www.jiangweishan.com) 版权所有 All Rights Reserved.
粤ICP备12067512号-1

Copyright Your WebSite.Some Rights Reserved.

Powered By Z-BlogPHP 1.7.2