【问题标题】:Warning: Expected an assignment or function call and instead saw an expression警告:预期一个赋值或函数调用,而是看到一个表达式
【发布时间】:2016-01-05 19:41:56
【问题描述】:

我正在检查来自this library 的文档源文件index.js。我查了一下jshint中的代码,有一个警告说:

期待一个赋值或函数调用,但看到的是一个表达式。

文件:index.js Line: 215

s = (Math.sqrt((x * x) + (y * y)) / r) * 100;

为什么我会收到警告,我该如何解决?

【问题讨论】:

标签: javascript


【解决方案1】:

迈克尔·刘是正确的。在the jshint website,用分号替换逗号可以消除警告:

function main() {
  var currentTargetHeight = 240;
  var e = {clientX: 40, clientY: 50};
  var startPoint = { left: 3, right: 4};
  var r, x, y, h, s;
  r = currentTargetHeight / 2;
  x = e.clientX - startPoint.left - r;
  y = e.clientY - startPoint.top - r;
  h = 360 - ((Math.atan2(y, x) * 180 / Math.PI) + (y < 0 ? 360 : 0));
  s = (Math.sqrt((x * x) + (y * y)) / r) * 100;
}

main();

【讨论】:

  • 谢谢!这样可行!作者为什么要用逗号?
  • 他们可能试图将多个变量定义为一个语句。这将是有效的:var r = currentTargetHeight / 2, x = e.clientX - startPoint.left - r, etc...
猜你喜欢
  • 2017-08-29
  • 2017-09-09
  • 2021-03-14
  • 2019-04-22
  • 2020-02-12
  • 2019-10-15
  • 2020-11-08
  • 1970-01-01
相关资源
最近更新 更多