整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

js 截取字符串

文为大家介绍三种 js 截取字符串的方法:

  • substring() 方法;
  • substr() 方法;
  • slice() 方法;

方法1:substring() 方法

string.substring(from, to) 方法从 from 位置截取到 to 位置,to 可选,没有设置时默认到末尾。

<!DOCTYPE html>
<html>
<body>
<script>
var str="www.runoob.com!";
document.write(str.substring(4)+"<br>"); // 从第 5 个字符开始截取到末尾
document.write(str.substring(4,10)); // 从第 5 个字符开始截取到第10个字符
</script>
</body>
</html>

尝试一下 »

更多关于substr() 方法请参考文档:http://www.runoob.com/jsref/jsref-substring.html。


方法2:substr() 方法

substr() 方法可在字符串中截取从开始下标开始的指定数目的字符。

<!DOCTYPE html>
<html>
<body>
<script>
var str="www.runoob.com!";
document.write(str.substr(4,6)); // 从第 4 个字符开始截取6个字符
</script>
</body>
</html>


方法3:slice() 方法

slice(start,end) 方法用于提取字符串的某个部分(从参数 start 到 end 位置),并以新的字符串返回被提取的部分。类似 substring()。

opyClip mac版是Macos上一款高效的剪切板历史管理软件,它能够存储您以前复制或剪切的所有内容,能够使您快速的找到您在寻找的文本片段,为您节省了很多时间提高效率。下载地址:https://www.macv.com/mac/828.html

Macv.com

CopyClip for Mac安装教程

下载完成后,双击.pkg文件打开,根据安装器提示进行安装即可。

Macv.com

CopyClip mac破解版软件功能

搜索功能

  • CopyClip 2附带一个功能强大的搜索栏,对于查找包含您过去复制的某些文本或字符的剪辑特别有用。您可以轻松选择搜索结果并将其粘贴到您需要的位置。

最近剪辑列表

  • 您可以固定剪报,使其显示在列表顶部,删除它们,甚至编辑它们以进行更改。您还可以通过按菜单热键获取鼠标指针旁边显示的最近剪辑列表。

历史记录

  • 每当您激活CopyClip 2时,新MacBook Pro上的触控条将自动显示您的剪报历史记录,从而更容易找到并粘贴以前复制的文本片段!

提高工作效率

  • 使用CopyClip 2,您会注意到您可以节省时间并提高执行某些平凡任务的效率。您可以轻松自定义应用程序以适合您的工作流程,并排除某些应用程序被记录在剪贴板历史记录中。

Macv.com

CopyClip粘贴板历史存储管理软件特色

  • 能够存储多达230个剪报
  • 如果需要,可以选择粘贴原始格式的剪报
  • 能够使用嵌入式搜索栏搜索剪报
  • 键盘快捷键粘贴剪报
  • 右键单击选项,将选定的剪报“钉”到列表的顶部
  • 你可以排除你不想复制剪辑的应用程序
  • 可以编辑和删除单个剪辑,也可以一次删除所有剪报
  • 在深色/浅色用户界面主题之间切换
  • 在菜单栏和Dock上都可以使用

时前端开发工作时,经常会需要对字符串进行截断,比如新闻标题,需要把超出可视区域后需要进行截断,如下图:

小编我由主要负责后端开发,最开始是采用后端方法来实现字符串截断,然后传递给前端人员使用。

但是这个方式有一个弊端,尤其是响应式的页面,截取字数无法精确控制,比如pc端可视区域可以显示150个字符,但是手机端屏幕最多只能显示20个字符,所以通过后端来控制字符数是非常烂的解决方案,最好的解决办法是通过前端方式来截断字符串,下面分别用javascript和css的方式来实现。

先看一下html部分

<div class="title">
为什么要制作高端的网站?高端网站建设价格为什么越来越高?
</div>

下面分别针对这行html进行截断操作。

1、javascript方式。

先封装一个截取字符串的方法,代码如下:

<script>
String.prototype.left = function (len) //左边截取字段数
{
 var str = this;
 if (isNaN(len) || len == null) {
 len = str.length;
 }
 else {
 if (parseInt(len) < 0 || parseInt(len) > str.length) {
 len = str.length;
 }
 }
 return str.substr(0, len);
}
</script>

然后再页面中采用jquery方式调用:

<script type="text/javascript">
 $(function () {
 var $title=(".title");
 var txt= $title.html().left(50); //截取前50个字符
 $title.html(txt); //重新
 });
</script>

这种方式可以实现字符串的截取,但是这种方法也不理想,pc端和手机端截取字数还是需要单独根据浏览器类型来定义。

2、css控制,这个是最推荐的解决方案

定义一个css类:

.title {
 white-space: nowrap;
 text-overflow: ellipsis; 
 overflow: hidden;
}

text-overflow: ellipsis; 这句意思是超出可视区域后显示三个点...,如果只想截断,可以改为: text-overflow:clip。

今天先写到这里,如果感觉对您有帮助,可以转发一下,后续有时间再分享一下前端技巧给大家。