Formula to detect the ease of reading a text according to Flesch Reading Ease.
See syllable for detecting syllables.
npm:
$ npm install fleschComponent:
$ component install wooorm/fleschBower:
$ bower install fleschvar flesch = require('flesch');
/**
* For “The cat sat on the mat” (1 sentence, 6 words,
* 6 syllables).
*/
flesch({
'sentence' : 1,
'word' : 6,
'syllable' : 6
});
// 116.14500000000001
/**
* For “The Australian platypus is seemingly a hybrid of
* mammal and reptilian creature.” (1 sentence, 13 words,
* 26 syllables).
*/
flesch({
'sentence' : 1,
'word' : 13,
'syllable' : 26
});
// 24.440000000000026Given an object containing the number of words (word), the number of sentences (sentence), and the number of syllables (syllable) in a document, returns the reading ease associated with the document.
Returned values are 120 (every sentence consisting of only two one-syllable words), or lower (including negative values).
The values have the following semantics:
| Score | Semantics |
|---|---|
| 90.0 – 100.0 | Easily understood by an average 11-year-old student |
| 60.0 – 70.0 | Easily understood by 13- to 15-year-old students |
| 0.0 – 30.0 | Best understood by university graduates |
- automated-readability — Uses character count instead of an error-prone syllable parser;
- coleman-liau — Uses letter count instead of an error-prone syllable parser;
- dale-chall-formula — Uses a dictionary; suited for higher reading levels;
- flesch-kincaid — Like flesch-formula; returns U.S. grade levels;
- gunning-fog — Uses syllable count; hard to implement with a computer (needs POS-tagging and Named Entity Recognition);
- smog-formula — Like gunning-fog-index; without the need for advanced NLP tasks;
- spache-formula — Uses a dictionary; suited for lower reading levels.
MIT © Titus Wormer