首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我想使用JavaScript截断带有省略号的文本或行

我想使用JavaScript截断带有省略号的文本或行
EN

Stack Overflow用户
提问于 2011-01-15 22:58:05
回答 8查看 136.4K关注 0票数 82

我正在寻找一个简单的脚本,可以截断一个字符串与省略号(...)

我想将诸如'this is a very long string'之类的内容截断为'this is a ve...'

我不想使用CSS或PHP。

EN

回答 8

Stack Overflow用户

发布于 2011-01-15 23:07:11

代码语言:javascript
复制
function truncate(input) {
   if (input.length > 5) {
      return input.substring(0, 5) + '...';
   }
   return input;
};

或在ES6中

代码语言:javascript
复制
const truncate = (input) => input.length > 5 ? `${input.substring(0, 5)}...` : input;
票数 166
EN

Stack Overflow用户

发布于 2011-01-15 23:00:29

类似于:

代码语言:javascript
复制
var line = "foo bar lol";
line.substring(0, 5) + '...' // gives "foo b..."
票数 10
EN

Stack Overflow用户

发布于 2017-02-16 01:39:48

用于防止单词中间或标点符号后面的点。

代码语言:javascript
复制
let parseText = function(text, limit){
  if (text.length > limit){
      for (let i = limit; i > 0; i--){
          if(text.charAt(i) === ' ' && (text.charAt(i-1) != ','||text.charAt(i-1) != '.'||text.charAt(i-1) != ';')) {
              return text.substring(0, i) + '...';
          }
      }
       return text.substring(0, limit) + '...';
  }
  else
      return text;
};
    
    
console.log(parseText("1234567 890",5))  // >> 12345...
console.log(parseText("1234567 890",8))  // >> 1234567...
console.log(parseText("1234567 890",15)) // >> 1234567 890

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4700226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档