Sha256: e67fd25265dbf5fccd6133c77a5d5445945fd9e385f4d947b4ad2c6ce46767c4
Contents?: true
Size: 658 Bytes
Versions: 69
Compression:
Stored size: 658 Bytes
Contents
var toString = require('../lang/toString'); var trim = require('./trim'); /** * Limit number of chars. */ function truncate(str, maxChars, append, onlyFullWords){ str = toString(str); append = append || '...'; maxChars = onlyFullWords? maxChars + 1 : maxChars; str = trim(str); if(str.length <= maxChars){ return str; } str = str.substr(0, maxChars - append.length); //crop at last space or remove trailing whitespace str = onlyFullWords? str.substr(0, str.lastIndexOf(' ')) : trim(str); return str + append; } module.exports = truncate;
Version data entries
69 entries across 69 versions & 2 rubygems