Nodejs String Truncate truncate(max_len, appender)

Here you can find the source of truncate(max_len, appender)

Method Source Code

'use strict';//  w  ww.j  a v  a  2 s .  c  o m

/**
 * Truncate string nicely by appending '...'
 * @method
 * @param  {Integer=} max_len
 * @param  {String=}  appender
 * @return {String}
 */
String.prototype.truncate = function(max_len, appender) {
  max_len  = max_len || 80;
  appender = appender || '...';
  if (appender.length >= max_len) {
    throw Error('appender length is greater or equal to max_len');
  }
  if (this.length <= max_len) {
    return this;
  } else {
    return this.substr(0, max_len - appender.length) + appender;
  }
};

/**
 * Cast buffer to hex string and truncate it nicely by appending '...'
 * @method
 * @param  {Integer=} max_len
 * @param  {string=}  appender
 * @return {String}
 */
Buffer.prototype.truncate = function(max_len, appender) {
  return this.toString('hex').truncate(max_len, appender);
};

Related

  1. truncate(length)
    String.prototype.truncate = function(length) {
      length = typeof length !== 'undefined' ? length : 100;
      if (this.length > length) {
        var str = this.substring(0, length);
        str = str.substring(0, Math.min(str.length, str.lastIndexOf(" ")));
        str = str + " ...";
        return str;
      } else {
        return this;
    ...
    
  2. truncate(length, substitute)
    String.prototype.truncate = String.prototype.truncate || function (length, substitute) {
      return this.length > (length || 30) ? this.substr(0, (length || 30)).replace(/\s$/, '') + (substitute || '?') : this.toString()
    
  3. truncate(length, truncation)
    String.prototype.truncate = function(length, truncation) {
      length = length || 30;
      truncation = truncation === undefined ? '...' : truncation;
      return this.length > length ?
        this.slice(0, length - truncation.length) + truncation : String(this);
    };
    
  4. truncate(length, truncation)
    String.prototype.truncate = function(length, truncation) {
        length = length || 30;
        truncation = (typeof truncation == 'undefined') ? '&hellip;' : truncation;
        return this.length > length
            ? this.slice(0, length) + truncation
            : this;
    };
    
  5. truncate(length, useWordBoundary)
    String.prototype.truncate = function(length, useWordBoundary) {
        var toLong = this.length > length,
        s_ = toLong ? this.substr(0, length - 1) : this;
        s_ = useWordBoundary && toLong ? s_.substr(0, s_.lastIndexOf(' ')) : s_;
        return toLong ? s_ + '&hellip;' : s_;
    };
    
  6. truncate(maxlength)
    String.prototype.truncate = function (maxlength) {
        if (!this) {
            return '';
        if (!maxlength) {
            maxlength = 20;
        return (this.length > maxlength) ? this.slice(0, maxlength - 3) + '...' : this;
    };
    ...
    
  7. truncate(n)
    String.prototype.truncate = function(n){
          return this.substr(0,n-1)+(this.length>n?'...':'');
    };
    
  8. truncate(n)
    String.prototype.truncate = function(n) {
      var tooLong = this.length > n,
          string = tooLong ? this.substr(0,n-1) : this;
      string = tooLong ? string.substr(0,string.lastIndexOf(' ')) : string;
      return  tooLong ? string + '...' : string;
    };
    
  9. truncate(options)
    String.prototype.truncate = function (options) {
      var length = (options && options.length) || 50;
      var ending = (options && options.ending) || "...";
      var truncated = this.slice(0, length);
      if (truncated.length < this.length)
        truncated += ending;
      return truncated;
    };