Я работаю над назначением, которое использует метод pixel.getGreen()
. Мой вопрос, когда я пытаюсь использовать pixel.getGreen
(без круглых скобок), я получаю другой результат, чем при использовании метода с круглыми скобками. В чем разница между ними?
Вот код, я работаю с:pixel.getGreen vs pixel.getGreen()
function swapRedGreen(pixel){
var oldRed = pixel.getRed();
var oldGreen = pixel.getGreen();
pixel.setRed(oldGreen);
pixel.setGreen(oldRed);
return pixel;
}
var image = new SimpleImage("smallhands.png");
print (image);
for (var pixel of image.values()) {
pixel = swapRedGreen(pixel);
}
print (image);
Я получаю шаг черное изображение, когда я пытаюсь запустить код без скобок.
У меня есть один вопрос: я не объявляю функцию при использовании 'pixel.getGreen', как в примере, который я опубликовал выше. Как работает эта функция, не объявляя ее в первую очередь? –
Похоже, вы используете библиотеку. Это правильно? Если это так, то функция 'getGreen' объявлена в другом месте, а когда вы введете' var image = new SimpleImage («smallhands.png»), 'у вас есть эта функция, доступная объекту' image' через прототипное наследование. Если вы не знаете, как работает прототипное наследование, определите google. Это стоит понимания и является очень фундаментальной концепцией в javascript. Надеюсь, это поможет! –