String对象是迄今为止在JavaScript中最常用的对象。在你定义一个字符串数据类型的变量的任何时候,JavaScript就自定为你创建一个String对象。例如:

  var myStr = "Hello world";

  当创建一个字符串时,有一些特殊字符是不能直接添加到字符串中的。针对那些字符,JavaScript提供了一组转义码,如下表所示:

String对象的转义码

转义码 说  明 示  例 输出字符串
\' 单引号 "couldn\'t be" couldn't be
\" 双引号 "I \"think" I "am"" I "think" I "am"
\\ 反斜杠 "one\\two\\three" one\two\three
\n 换行符 "I am\nI said"

I am

I said

\r 回车符 "to be\ror not"

to be

or not

\t 制表符 "one\ttwo\tthree" one two three
\b 退格符 "correctoin\b\b\bion" correction
\f 换页符 "Title A\fTitle B" Title A 然后 Title B

  你可以使用String对象的length属性确定一个字符串的长度,如下例所示:

  var numOfChars = myStr.length;

  String对象有许多函数,使你可以以不同的方式访问和操作字符串。用于字符串操作的方法如下表所示:

操作String对象的方法

方 法 说 明
  charAt(index)   返回指定索引处的字符  
  charCodeAt(index)   返回指定索引处的字符的Unicode值
  concat(str1,str2,...)   连接两个或多个字符串,返回连接后的字符串的副本
  formCharCode()   将Unicode值转换成实际的字符  
  indexOf(subString)   返回指定的subString值第一次出现的位置。如果没有找到subString,返回-1  
  lastIndexOf(subString)   返回指定的subString值最后出现的位置。如果没有找到subString,返回-1
  match(regex)   搜索字符串,并返回正则表达式的所有匹配  

  replace(subString/regex),

  replacementString)

  搜索字符串的字符串 或正则表达式匹配,并用新的子串替换匹配的子串 
  search(regex)   基于正则表达式搜索字符串,并返回第一个匹配的位置  
  slice(start,end)   返回字符串的start和end(不含)位置之前的部分的一个新字符串  
  split(sep,limit)   根据分隔符或正则表达式,把字符串分割为子字符串数组。可选的limit参数定义从头开始执行分割的最大数量  
  substr(start,length)   从字符串指定的start位置开始,并按照指定的字符length(长度)提取字符  
  substring(from,to)   返回字符索引在from与to(不含)之间的字符  
  toLowerCase()   将字符串转换为小写
  toUpperCase()   将字符串转换为大写
  valueOf()   返回原始字符串值

 

  1、合并字符串

  你可以使用+操作符或使用第一个字符串上的concat()函数将多个字符串合并。例如,在下面的代码中,sentence1和centence2将是相同的:

    var word1 = "Today";

    var word2 = "is";

    var word3 = "tomorrows\'";

    var word4 = "yesterday.";

    var sentence1 = word1+word2+word3+word4;

    var sentence2 = word1.concat(word2,word3,word4);

  2、在字符串中搜索子串

  要确定一个字符串是否是另一个字符串的子字符串,可以使用indexOf()方法。例如,下面的代码只有当字符串包含单词think时,才把它写入控制台:

    var myStr = "I think, therefore I am.";

    if (myStr.indexOf("think") != -1){

      console.log(myStr);

    }

  3、在一个字符串中替换单词

  另一种常见的String对象的任务是把一个子串替换为另一个。要替换字符串中的单词或短语,可以使用replace()方法。下面的代码用变量username的值来替换文本"<username>":

    var username = "Brad";

    var output = "<username>please enter your password";

    output.replace("<username>",username);

  4、将字符串分割成数组

  对于字符串,一个非常常见的任务是使用分隔符将它们分割成数组。例如,下面的代码在":"分割符上使用split()方法将一个时间字符串转换成他的基本组成部分的数组:

    var t = "12:10:36";

    var tArr = t.split(":");

    var hour = tArr[0];

    var mimute = tArr[1];

    var second = tArr[2];

JavaScript基础——处理字符串的更多相关文章

  1. JavaScript基础:字符串转换函数——String()和toString()

    1..toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined 例如将false转为字符串类型 <script>   var str = false ...

  2. JavaScript基础06——字符串

    字符串的创建: 字符串的创建: var str = "hello world"; //常量,基本类型创建 var str2 = new String("hello wor ...

  3. 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍

    1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...

  4. JavaScript基础进阶之常用字符串方法总结

    前面三篇文章简单的把JavaScript基础内容过了一遍,我们已经可以用JavaScript写一些简单的代码了. 今天主要总结一下JavaScript中String对象中自带的一些方法,来帮助我们处理 ...

  5. JavaScript基础

    JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...

  6. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  7. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

  8. Javascript基础回顾 之(一) 类型

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  9. JavaScript 基础回顾——对象

    JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...

随机推荐

  1. 淘宝(阿里百川)手机客户端开发日记第十篇 阿里百川服务器环境介绍之API文档的快速链接(四)

    个人感觉比较重要的快速链接: http://open.taobao.com/doc/detail.htm?id=102513 http://open.taobao.com/doc/detail.htm ...

  2. BZOJ1901——Zju2112 Dynamic Rankings

    1.题目大意:区间第k小,有单点修改 2.分析:这个是树状数组套线段树,也是主席树....为什么主席树这么多QAQ 就是树套树的那种插入什么的,注意啊,一定要动态开内存..不然会爆.. 然后算答案有两 ...

  3. 剑指Offer 通过中序和先序遍历重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  4. mysql 查询某个日期时间段,每天同一时间段的数据

    mysql 查询某个日期时间段,每天同一时间段的数据: SELECT * FROM t_a01_eltable WHERE DATE_FORMAT(acqtime,'%Y-%m-%d')>='2 ...

  5. django的信号

    Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 1.Django内置信号 Model signals pre_in ...

  6. [mysql]max_allowed_packet ,centos

    在通过脚本向mysql写入大量测试数据时,出现这个问题,记录下: https://dev.mysql.com/doc/refman/5.5/en/packet-too-large.html 修改/et ...

  7. espcms自定义表单邮件字段

    /include/inc_replace_mailtemplates.php中增加一行就可以了. 如:$replacemail['mailform'][] = array(name => '职位 ...

  8. 【leetcode】Binary Tree Maximum Path Sum

    Binary Tree Maximum Path Sum Given a binary tree, find the maximum path sum. The path may start and ...

  9. Wince常见操作

    1.获取本地代码启动路径 //在代码启动路径下存在 Files 文件夹 Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName(). ...

  10. java 入门 第二季1

    (1). 类和对象(java 语言是面向对象的) 1). 类是对象的类型 具有相同的属性和方法的一组对象的集合 类:属性和方法 定义类: 类名 属性 方法 //class为关键字 2.定义类时,首字母 ...