And FWIW a variant, very fractionally faster, could use the JavaScript Array.reduce
pattern.
Expand disclosure triangle to view JS Source
(() => {
"use strict";
// Word count for Bike
// Rob Trew @2022
// Ver 0.3
const
bike = Application("Bike"),
frontDoc = bike.documents.at(0),
space = /\s+/gu;
return frontDoc.exists(0) ? (() => {
const
n = frontDoc.rows.name().reduce(
(sofar, para) => sofar + (
para.split(space).length
),
0
);
return `${n} words in ${frontDoc.name()}`;
})() : "No documents open in Bike.";
})();