字符串是JavaScript中最常使用的一个对象,几乎每一个程序都会使用到字符串。与其它基本数据类型一样,字符串也有两种形式:基本数据类型形式和对象形式。JavaScript会根据需要在这两种形式之间自动转换。

字符串对象也就是String对象,它提供了一组方法和属性来完成各种字符串操作。创建字符串的方法有两种:一是通过把用引号括起来的文字字符赋值给变量,这种方法称为隐式方法;另一种是使用关键字new和字符串对象构造函数String()来创建String对象。它的语法格式为:

var str = "hello world";

var str = new String("hello world");

String对象的属性

String对象有两个属性,如下表所示。length属性用于得到字符串中包含的字符个数,每一个汉字算是一个字符。

属性

描述

length

保存字符串中的字符个数。只读属性

prototype

用于扩展String对象的属性和方法

String对象的方法

String对象提供了两类方法:一类是模拟HTML标签,用于格式化字符串,比如改变字体大小和文字颜色等;另一类用于操作字符串,例如查找和替换字符串,改变字符串的大小写,提取子串等。

格式化字符串方法:

方法

描述

String.anchor(name)

等价于HTML标签String

String.big()

等价于HTML标签String

String.blink()

等价于HTML标签String

String.bold()

等价于HTML标签String

String.fixed()

等价于HTML标签String

String.fontcolor(color)

等价于HTML标签String

String.fontsize(size)

等价于HTML标签String

String.italics()

等价于HTML标签String

String.link(URL)

等价于HTML标签String

String.small()

等价于HTML标签String

String.strike()

等价于HTML标签String

String.sub()

等价于HTML标签String

String.sup()

等价于HTML标签String

操作字符串方法:

方法

描述

charAt(n)

返回字符串中第n个位置的字符。n从零开始计算

charCodeAt(n)

返回字符串中第n个位置的字符的Unicode编码。n从零开始计算

concat(value,...)

将每一个参数转换为字符串并拼接在该字符串对象的字符串值后面,形成一个字符串并返回

indexOf(subString,start)

返回subString在字符串中start位置后面第一次出现的开始位置。如果subString在字符串start位置后面没有出现,该方法返回-1;省略start时,从字符串开始位置搜索字符串

lastIndexOf(subString,start)

返回subString在字符串中start位置前面最后一次出现的开始位置。如果subString在字符串中start位置前面没有出现,该方法返回-1;省略start时,从字符串尾部开始搜索字符串

match(regexp)

使用指定的正则表达式匹配字符串,并返回包含匹配结果的数组,如果没有匹配结果,则返回null。如果regexp不是全局正则表达式,那么返回的数组与RegExp.exec()方法的执行结果相同;如果regexp是全局正则表达式(包含了“g”属性),返回数组的元素包含了每一个匹配的结果。关于该函数,将在后面正则表达式中详细介绍

replace(regexp,replacement)

使用replacement替换字符串中regexp指定的内容,并返回替换后的结果。regexp可以是正则表达式,也可以是一般文本。replacement中可以包含正则表达式,也可以是一个函数

search(regexp)

返回与regexp匹配的第一个字符串的开始位置。如果都不匹配,则返回-1

slice(start,end)

返回字符串中从start位置开始,到end位置结束的子字符串,子字符串中,不包括end位置的字符。省略end参数时,则得到的子字符串为从start位置开始,到字符串结束位置的子串。如果参数为负值,表示从字符串尾部开始计算字符串的位置

split(delimiter)

以delimiter为分隔符,将字符串拆分到一个字符串数组中,并返回该数组。delimiter可以是一个字符串,也可以是正则表达式

substring(from,to)

返回从第from个字符开始,到(to-1)个字符结束的子串,如果省略了to参数,那么返回从第from个字符开始,到字符串末尾的子串。from的有效值在0到字符串长度-1之间

substr(start,length)

返回从第start位置开始的连续length个字符组成的子串。省略length参数时,返回从第start位置开始,到字符串结尾的子串

toLowerCase()

将所有字符转换为小写后返回,该函数对汉字没有作用

toUpperCase()

将所有字符转换为大写后返回,该函数对汉字没有作用

除了上面这些于String对象实例相关的方法之外,String对象还提供了一个静态方法fromCharCode(),该方法不需要String对象实例,而是直接使用String本身来引用。这个方法的功能是将字符编码转换为字符串,字符编码之间使用逗号隔开,其语法为:

String.fromCharCode(c1,c2,...,cn);

例如,执行下面的语句后,结果的返回值为ABCD(其中A的ASCII码为65,B的ASCII码为66,C的ASCII码为67,D的ASCII码为68)。

String.fromCharCode(65,66,67,68); //返回ABCD

应用举例

String对象格式化字符串方法的应用

格式化字符串方法的应用

String.anchor()的用法:

String.big()的用法:

String.blink()的用法:

String.bold()的用法:

String.fixed()的用法:

String.fontcolor()的用法:

String.fontsize()的用法:

String.italics()的用法:

String.link()的用法:

String.strike()的用法:

String.sub()的用法:

String.sup()的用法:

var str1 = "jQuery之家";

var str2 = "©";

document.write("String.anchor()的用法:"+str1.anchor('htmleaf'));

document.write("String.big()的用法:"+str1.big());

document.write("String.blink()的用法:"+str1.blink());

document.write("String.bold()的用法:"+str1.bold());

document.write("String.fixed()的用法:"+str1.fixed());

document.write("String.fontcolor()的用法:"+str1.fontcolor('red'));

document.write("String.fontsize()的用法:"+str1.fontsize('+2'));

document.write("String.italics()的用法:"+str1.italics());

document.write("String.link()的用法:"+str1.link('http://www.htmleaf.com/'));

document.write("String.strike()的用法:"+str1.strike());

document.write("String.sub()的用法:"+str1+str2.sub();

document.write("String.sup()的用法:"+str1+str2.sup());

String对象字符串操作方法的应用

格式化字符串方法的应用

“jQuery之家”包含: 个字符(中文算一个字符)

“jQuery之家”的第二个字符是:

“jQuery之家”的第七个字符的Unicode编码是:

str1.concat(str3)的结果为:

str1.indexOf("之家")的结果为:

str1.lastIndexOf("jQ")的结果为:

str1.slice(2,5)的结果为:

str1.slice(-5,-2)的结果为:

str1.substring(2,5)的结果为:

str1.substr(2,5)的结果为:

str1.toLowerCase()的结果为:

str1.toUpperCase()的结果为:

var str1 = "jQuery之家";

var str2 = "©";

var str3 = "-自由分享jQuery、HTML5和CSS3的插件库";

document.write("“jQuery之家”包含:"+str1.length +"个字符(中文算一个字符)");

document.write("“jQuery之家”的第二个字符是:"+str1.charAt(1));

document.write("“jQuery之家”的第七个字符的Unicode编码是:"+str1.charCodeAt(6));

document.write("str1.concat(str3)的结果为:"+str1.concat(str3));

document.write("str1.indexOf("之家")的结果为:"+str1.indexOf("之家"));

document.write("str1.lastIndexOf("jQ")的结果为:"+str1.lastIndexOf("jQ"));

document.write("str1.slice(2,5)的结果为:"+str1.slice(2,5));

document.write("str1.slice(-5,-2)的结果为:"+str1.slice(-5,-2));

document.write("str1.substring(2,5)的结果为:"+str1.substring(2,5));

document.write("str1.substr(2,5)的结果为:"+str1.substr(2,5));

document.write("str1.toLowerCase()的结果为:"+str1.toLowerCase());

document.write("str1.toUpperCase()的结果为:"+str1.toUpperCase());

html5 字符串对象,JavaScript核心对象-String对象相关推荐

  1. JavaScript核心之Document对象详解(document属性,方法)

    目录 1 Document节点概述 2 document节点的属性 2.1 doctype,documentElement,defaultView,body,head,activeElement 2. ...

  2. java string 对象地址_Java中String对象的存储位置(学习笔记)

    packagetest.string.equal;public classMain {/*** 创建了三个对象,"helloworld对象创建在常量池中",每次new String ...

  3. 七、ES对象(三) -- String对象

    一.String对象 1.1 字符串的实质 在底层字符串对象实质上是以字符数组的形式存储的.所以数组的一些特性也适用于字符串. 1.2 创建字符串 1.var str="hello worl ...

  4. 如何在html页面遍历对象,javascript如何循环遍历对象?

    在JavaScript中有多种循环遍历对象的方法,下面本篇文章就来给大家介绍一下使用JavaScript循环遍历对象的方法,希望对大家有所帮助. 1.使用for 循环 for 循环是 Js 中最常用的 ...

  5. php 类的数组对象,javascript、php数组对象互转类

    代码: /* @desc:数组和对象互转类 @param data 待转换的数据 */ function arrobj(data){ this.data = data /* @desc:对象转数组 * ...

  6. 内置对象的API Array数组对象 String字符串对象 json字符串 JSON对象 js作用域及变量预解析 引用类型与值类型区别 共享引用 基本包装类型 数组去重

    01-内置对象的API a.Date对象获取时间 b.Array对象数组加工 c.String对象字符串加工 d.json字符串的语法格式 e.JSON对象的字符串与对象转换应用 02-JS作用域 a ...

  7. string对象和C风格字符串

    混用string对象和C风格字符串 我们都知道允许使用字符串字面值来初始化string对象: string s("Hello World!"); C++规定,任何出现字符串字面值的 ...

  8. 混用string对象与C风格字符串

    任何出现字符串字面值的地方都可以用以空字符结束的字符数组来替代: 允许使用以空字符结束的字符数组来初始化string对象或为string对象赋值. 在string对象的加法运算中允许使用以空字符结束的 ...

  9. JavaScript(5)-内置对象

    一.JavaScript 对象分类 对象只是一种特殊的数据.对象拥有属性和方法. JavaScript 中的所有事物都是对象:字符串.数值.数组.函数- JavaScript 中的对象分类: 自定义对 ...

最新文章

  1. AAAI 2020 | 多模态基准指导的生成式多模态自动文摘
  2. pytho基础之文件处理
  3. html-body标签中相关标签 02
  4. python二进制反码例题_python中的进制转换和原码,反码,补码
  5. 单行文本和多行文本溢出以省略号显示方法
  6. Dungeon Master 地下城大师(BFS进阶)
  7. AMD 和 CMD 的区别有哪些?
  8. C语言程序设计知识必备pdf,C语言程序设计基础知识要点.pdf
  9. vertica常用sql语句总结
  10. 用python做爬虫看图软件-RandomPicture
  11. mysql 1031_MySQL5.6数据导入MySQL5.7报错:ERROR 1031 (HY000)
  12. 写好英语科技论文的诀窍: 主动迎合读者期望,预先回答专家可能质疑--周耀旗教授
  13. Nginx出现大量499响应码怎么办?
  14. 【转载】mysql view prevents operation处理
  15. Qt之时间轴样式汇总
  16. 我为什么放弃java学习Kotlin?
  17. 位运算::Bitwise operation
  18. 预训练模型(PTMs)发展史
  19. 软件工程-白盒测试(实验报告)
  20. 考研英语 - word-list-3

热门文章

  1. New-Python-数据类型、字符编码、文件处理
  2. 动态库注入--APC注入
  3. Memcache 和 Radis 比较
  4. 第十周 11.1-11.7
  5. 【软件工程第三次作业】
  6. android前端开发 布局学习
  7. RANSAC与圆柱拟合
  8. 7-273 插入排序还是归并排序 (25 分)
  9. oracle数据库部署策略,Oracle数据库部署实施流程
  10. 取到小数后三位_小数名师工作室 数学实验 || 一个小数乘10、100、1000……的计算规律...