问题描述
我的javascript代码遇到语法错误。我收到“其他意外令牌”错误消息。 我希望有人可以帮助我。这是我的代码:
function doRed() {
for (var pixel of img.values()){
var avg = (pixel.getRed()+pixel.setGreen()+pixel.getBlue())/3;
if ( avg() < 128) {
pixel.setRed(2*avg);
pixel.setGreen(0);
pixel.setBlue(0);
}
}
else {
pixel.setRed(255);
pixel.setGreen(2*avg - 255);
pixel.setBlue(2*avg - 255);
}
var imgcanvas = document.getElementById("can");
img.drawTo(imgcanvas);
}
解决方法
您的else
语句处于错误的位置,遵循for
循环而不是if
语句。
您可能打算这样写:
function doRed() {
for (var pixel of img.values()) {
var avg = (pixel.getRed()+pixel.setGreen()+pixel.getBlue())/3;
if (avg() < 128) {
pixel.setRed(2*avg);
pixel.setGreen(0);
pixel.setBlue(0);
}
else {
pixel.setRed(255);
pixel.setGreen(2*avg - 255);
pixel.setBlue(2*avg - 255);
}
}
var imgcanvas = document.getElementById("can");
img.drawTo(imgcanvas);
}