嘛,开头来个定义好了!

首先它是JavaScript基本数据类型之一。字符串由零或多个16位Unicode字符组成的字符序列,用''或者""表示。

它有一些转义序列,例如\n \t \b \r \f \\ \' \" \xnn \unnnn等等。

接下来看看它的属性:

length 任何字符串可通过该属性获得字符串长度;

var text="This is a blog.";
console.log(text.length); //15

其次是方法:

转为字符串:toString() 和String()函数

toString()返回相应字符串值。除了null和undefined以外,所有数值,布尔值,对象和字符串值都有该方法。

一般情况下,可以不传参数,此时,输出值与指定基数10时的输出相同。它可以传一个参数:输出数值的基数。通过传递技术,toString()可以输出以二进制,八进制,十六进制或其他任意有效进制格式表示的字符串值。例如:

var num=10;
console.log(num.toString()); //"10"
console.log(num.toString(2)); //"1010"
console.log(num.toString(10)); //"10"
console.log(num.toString(16)); //"a"

String()函数不知转换值是不是null或者undefined时使用,它可以将任何类型的值转为字符串。String()遵循下列转换规则:

  • 如果值有toString()方法,则调用该方法(没有参数)并返回相应结果;
  • 如果值是null,则返回"null";
  • 如果值是undefined,则返回"undefined".
var num=10;
var boolvalue=true;
var nullvalue=null;
var value; console.log(String(num)); //"10"
console.log(String(boolvalue)); //"true"
console.log(String(nullvalue)); //"null"
console.log(String(value)); //"undefined"

  

搜索字符对应位置的方法:indexOf()与lastIndexOf()

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置

两个参数,第一个参数是需要检索的字符串值,必须参数;第二个参数是从哪个位置开始检索,默认从字符串首部开始检索,选填参数。找到了返回首次出现的位置,若找不到返回-1.

var s='hello toyocc';
console.log(s.indexOf('t',3)); //6
console.log(s.indexOf('o',0)); //4
console.log(s.indexOf('o')); //4
console.log(s.indexOf('s')); //-1

lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索

两个参数,第一个参数是需要检索的字符串值,必须参数;第二个参数是从哪个位置开始检索,默认从字符串最后一个字符处开始检索,选填参数。找到了返回最后出现的位置,若找不到返回-1.

var s="It's me, toyocc";
console.log(s.lastIndexOf('t',3)); //1
console.log(s.lastIndexOf('o',0)); //-1
console.log(s.lastIndexOf('o')); //12
console.log(s.lastIndexOf('s')); //3

分割方法:split()分割成字符串数组 及扩展方法Array.join()

split() 把字符串分割为字符串数组。两个参数,第一个参数是字符串或正则表达式,指定从哪儿开始分割字符串,必须参数(第一个参数一般可以是一个空格" ",将分成一个个单词。也可以是什么也没有的"",将字符处每个字符包括空格都分割开来);第二个参数是设置返回的字符串数组的最大长度,默认是全部返回,选填参数。

扩展:数组的join()方法与字符串方法刚好相反,Array.join()将字符串数组连接成一个字符串

var s="Hei, toyocc";
console.log(s.split(" ")); //["Hei,", "toyocc"]
console.log(s.split("")); //["H", "e", "i", ",", " ", "t", "o", "y", "o", "c", "c"]
console.log(s.split("",5)); //["H", "e", "i", ",", " "]
/*扩展*/
var a=["H", "e", "i", ",", " ", "t", "o", "y", "o", "c", "c"];
console.log(a.join()); //"H,e,i,,, ,t,o,y,o,c,c"默认使用","连接整个字符串
console.log(a.join());//"Hei, toyocc"

连接方法:concat() 与使用"+"连接符号

concat()这个是连接字符串的方法,参数就是需要顺序连接在字符串尾部的字符串,可传多个参数。平时字符串连接使用多的是"+"连接。

console.log("I'm".concat(" ","toyocc","."));   //I'm toyocc.
console.log("I'm"+" "+"toyocc"+"!"); // I'm toyocc!

截取子字符串方法:slice(),substring()与substr()

slice() 提取字符串的片断,并在新的字符串中返回被提取的部分。它有两个参数,第一个参数是起始位置,第二个是结束位置。截取返回的是起止位中间部分。这两个参数都可以为负数,负数表示从字符串末尾开始数起,-1表示最后一个字符,以此类推。它与数组的方法alice()方法类似。

substring() 方法用于提取字符串中介于两个指定下标之间的字符。它也是两个参数,第一个起始下标,必需参数;第二个参数是终止下标,选填参数,默认截取到字符串末尾。截取返回中间部分,两个参数都是非负数。substring() 方法返回的子串包括起始下标的字符,但不包括终止下标处的字符。

substr() 方法可在字符串中抽取从起始下标开始的指定数目的字符。它有两个参数,第一个参数是起始下标,必需参数,可为负数,负数是倒着数的;第二个参数是需要截取的新字符串长度,选填参数,默认不填表示截取到字符串最后一个字符。不过这个方法不太推荐使用,因为ie4不识别起始下标,而且ECMAscript木有对它进行标准化。

var s="hello,toyocc.";
console.log(s.slice(2,5)); //'llo'
console.log(s.slice(-2,-1)); //'c'
console.log(s.substring(1,5)); //'ello'
console.log(s.substring(2)); //'llo,toyocc.'
console.log(s.substr(1,5)); //'ello,'
console.log(s.substr(1)); //'ello,toyocc.'

字符相关:charAt() 与 charCodeAt()

charAt() 返回在指定位置的字符。该方法传入一个参数,即字符在字符串中的下标,必需参数,若参数不在字符串下标范围内,那么返回一个空字符串。

charCodeAt()返回在指定的位置的字符的 Unicode 编码。该方法传入一个参数,即字符在字符串中的下标,必需参数,若参数是负数,或大于等于字符串的长度,则返回 NaN。这个方法可以用于自己动手写parseInt()方法中字符变数字部分!

方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。

console.log('toyocc'.charAt(2));   //"y"
console.log('toyocc'.charCodeAt(2)); //121
console.log('toyocc'.charAt(-2)); //""
console.log('toyocc'.charAt(20)); //""
console.log('toyocc'.charCodeAt(-2)); //NaN
console.log('toyocc'.charCodeAt(20)); //NaN

匹配方法:match()与replace()与search()

match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。只有一个参数,要么是需要检索的字符串值,那么它返回指定的值;要么是一个正则表达式,得到一个满足匹配的数组。

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。两个参数,第一个参数是要被替换的字符串或者一个正则表达式,必需参数;第二个参数是替换字符串或者函数。

search()检索与正则表达式相匹配的值,返回第一个匹配的起始位置。一个参数,即一个正则表达式。找不到匹配的值,返回-1。

这部分算是难点,需要配合正则表达式的地方要Ga油!多用用就好了吧。这部分例子就不给了吧。容我好好补习正则了再过来!!!

延伸:eval()函数,将字符串当作JavaScript代码来执行的方法。这个可用于简单计算,也可以执行一些简单js语句

console.log(eval("2+4"));   //6
console.log(eval("console.log('hello toyocc!')")); //hello toyocc!

使用不同形式显示字符串

big()用大号字体显示字符串。

blink()显示闪动字符串。

bold()使用粗体显示字符串

fixed()以打字机文本显示字符串。

fontcolor()使用指定的颜色来显示字符串。

fontsize()使用指定的尺寸来显示字符串。

fromCharCode()从字符编码创建一个字符串。

italics()使用斜体显示字符串。

link()将字符串显示为链接。

small()使用小字号来显示字符串。

strike()使用删除线来显示字符串。

sub()把字符串显示为下标。

sup()把字符串显示为上标。

toLocaleLowerCase()把字符串转换为小写。

toLocaleUpperCase()把字符串转换为大写。

toLowerCase()把字符串转换为小写。

toUpperCase()把字符串转换为大写。

toSource()代表对象的源代码。

valueOf()返回某个字符串对象的原始值。

方法的使用就像楼上那些一样,不对的话就去查看w3cshool里面具体用法吧!写这篇博文好崩溃呀。后期再来把代码补齐。。。

JavaScript字符串相关的更多相关文章

  1. javascript 字符串相关知识汇总

    ① charAt(): 选中字符串内第几个元素 <script> var str="1234567389"; alert( str.charAt(1) ); // 2 ...

  2. JavaScript 字符串用于存储和处理文本

    JavaScript 字符串用于存储和处理文本 var string_value='dasfsdfsd'; 注意:字符串利用索引精确定位取值 var character=string_value[7] ...

  3. JavaScript 字符串实用常操纪要

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  4. JavaScript 字符串操作

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  5. 常用linux 命令 -字符串相关

    参考网络文章,个人工作总结 题记:一般对字符串的操作有以下几种:求长度,截取字符串,拼接字符串,找字符串中某个字符的索引 1 expr 命令 1.1 定义 man 手册 Print the value ...

  6. JavaScript 字符串常用操作

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  7. 【Todo】字符串相关的各种算法,以及用到的各种数据结构,包括前缀树后缀树等各种树

    另开一文分析字符串相关的各种算法,以及用到的各种数据结构,包括前缀树后缀树等各种树. 先来一个汇总, 算法: 本文中提到的字符串匹配算法有:KMP, BM, Horspool, Sunday, BF, ...

  8. python中跟字符串相关的一些操作

    公司让用python自动生成代码,以前没看过python.所以匆匆的看了两天python就连猜带蒙就上马开干了..因此好多操作可能看的时候看懂了,用的时候知道有这么个东西,具体用法就忘记了..用到了就 ...

  9. JavaScript 字符串(String) 对象

    JavaScript 字符串(String) 对象 String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". ...

随机推荐

  1. Lua中的协同程序

    [前言] 协同程序与线程差不多,也就是一条执行序列,拥有自己独立的栈.局部变量和指令指针,同时又与其它协同程序共享全局变量和其它大部分东西.从概念上讲,线程与协同程序的主要区别在于,一个具有多个线程的 ...

  2. 阿里云ECS试用配置

    1.首先从阿里云找到ECS购买入口(目前在弹性入口的弹出框中).进入ECS购买界面后,选择免费试用. 此处省略试用申请过程. 2.然后再到云市场中购买一个免费的镜像服务.此处为Centos 64位系统 ...

  3. selenium——鼠标事件

    右键操作: 双击:

  4. SQL Server中文排序混乱

    在sql语句中指定了含有中文的列进行排序,但排序结果看起来毫无规则,并不是按照拼音进行排序的检查了DB的Collation后,发现是SQL_Latin1_General_CP1_CI_AS解决方法: ...

  5. apache负载调优

    Apache负载调优 watch -n 1 -d "pgrep httpd|wc -l"  #apache动态查看连接数     ps aux | grep httpd | wc ...

  6. tcpdump抓包常用命令列举

    情形一.采集指定网络接口和端口的数据包 sudo tcpdump -s 0 -x -n -tttt -i bond0  port  55944 -w /tmp/mysql_tmp.tcp 情形二.采集 ...

  7. git本地项目上传至码云gitee

    如果你的本机是安装成功第一次使用,先配置一下一些基本的信息 $ git config--global user.name "Your Name" $ git config --gl ...

  8. “System.FormatException”类型的未经处理的异常在 System.IdentityModel.dll 中发生 其他信息: 十六进制字符串格式无效。

    如果你的 WebService 客户端证书配置都没问题,唯独调用接口会出现这个错误 “System.FormatException”类型的未经处理的异常在 System.IdentityModel.d ...

  9. pandas设置值-【老鱼学pandas】

    本节主要讲述如何根据上篇博客中选择出相应的数据之后,对其中的数据进行修改. 对某个值进行修改 例如,我们想对数据集中第2行第2列的数据进行修改: import pandas as pd import ...

  10. 你好!酷痞Coolpy 之 Linux篇

    欢迎你进入酷痞的物联网世界.这里有着自由的空气和自然的气息.接下来我将告诉你如果一步步建立一个自己专属的物联网平台. 由于目前的酷痞的官方域名还没有通过备案所以现在用临时域名解说本说明. 最终酷痞的官 ...