<pre> instruction in function

This is a code snippet from Eloquent JavaScript in its Chapter 5 about Higher Order Functions:


function reduce(array, combine, start) {<pre>
function reduce(array, combine, start) {
  let current = start;  
  for (let element of array) {
  current = combine(current, element);
  }  
  return current;
}

console.log(reduce([1, 2, 3, 4], (a, b) => a + b, 0));

// → 10

I can understand the logic of this snippet but I have one question: What’s with the <pre> ? What does it do?

In the example he uses the array [1, 2, 3, 4] and the combine function he defines an arrow function that adds elements. At the beginning currentis equal to the start value defined in function call. Then the code defines current as the combine function of current and element from the array looping through it to finally return current. Swell…

Yet, I don’t understand what’s with the instruction <pre>… Is this some sort of recursion?

You must (somehow) have copied some HTML out. It isn’t part of the code.

If you click on the code it will open an editor view and you can actually run the code using the little menu on the top right. I would suggest you copy code from that view.

1 Like

Many thanks. Indeed, it didn’t make any sense and the one that you show from the website makes sense. This is from the ebook that I have:

HigherOrderFunctionEJS

The code runs OK in the book’s website…

Is it the one from the site? If so, and if it isn’t an issue with the reader, you might consider reporting it to the author.

I’d suggest you use the PDF version instead, there is a small version for mobile as well (the links are on the front page).

1 Like

But of course @camperextraordinaire Many thanks

You are right, I will stick to the website which is pretty cool.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.