引用类型(四)——基本包装类型(二)

来源:互联网 发布:战略管理 知乎 编辑:程序博客网 时间:2024/06/03 07:45

(三)String:字符串的对象包装类型。

1、定义字符串的方法

1)直接赋值。

var demo = "hello world";  //可以单引号也可以双引号var answer="It's alright";  //在字符串中使用引号var answer='It\'s alright';  //使用转义字符

2)使用String构造函数来创建。

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

2、使用位置(索引)访问字符串中的任何字符。

var ss = demo[1];  // ss = "e"

3、属性

  • length:表示字符串中包含多个字符。
var demo = "hello world";alert(demo.length);  // 11
  • prototype:可以向对象添加属性和方法。
function employee(name,born){    this.name=name;    this.born=born;}var fred=new employee("John",1970);employee.prototype.salary=null;fred.salary=20000;document.write(fred.salary);  // 20000
  • constructor:对创建该对象的函数的引用。
var txt = "Hello World!";document.write(txt.constructor);  // function String() { [native code] } 

4、方法

1)字符方法——访问字符串中特定字符的方法。

  • charAt():以单字符字符串的形式返回给定位置的那个字符。接收一个参数,即基于0的字符位置。如果参数不在0与string.length-1之间,该方法将返回一个空字符串。
  • charCodeAt():接收一个参数,即基于0的字符位置。返回在指定的位置的字符的Unicode编码。
  • 使用方括号加数字索引来访问字符串中的特定字符(ECMAScript 5 定义)。
var ss = "hello world";alert(ss.charAt(1));  // ealert(ss.charCodeAt(1));  // 101alert(ss[1]);  // e

2)字符串操作方法

  • concat()
    • 用于将一或多个字符串拼接起来,返回拼接得到的新的字符串。
    • 可以接收任意多个参数。
var s1 = "hello ";var s2 = s1.concat("world");alert(s2);  // "hello world"var s3 = s1.concat("world", "!");alert(s3);  // "hello world!"
  • slice()
    • 可提取字符串的某个部分,并以新的字符串返回被提取的部分。
    • 第一个参数指定字符串的开始位置,第二个参数表示自字符串到哪里结束(如果省略,则将字符串的末尾作为结束位置)。
    • 如果传入的参数是负数,会将传入的负值与字符串相加。
var ss = "hello world";alert(ss.slice(3));  // "lo world"alert(ss.slice(3,7));  // "lo w"alert(ss.slice(-3));  // "rld"
  • substr()
    • 从起始索引号提取字符串中指定数目的字符。
    • 第一个参数指定字符串的开始位置,第二个参数指定返回的字符个数。
    • 如果传入的参数是负数,会将负的第一个参数加上字符串的长度,将负的第二个参数转换为0。
var ss = "hello world";alert(ss.substr(3));  // "lo world"alert(ss.substr(3,7));  // "lo worl"alert(ss.substr(-3));  // "rld"alert(ss.substr(3,-4));  // ""(空字符串)
  • substring()
    • 提取字符串中两个指定的索引号之间的字符。
    • 第一个参数指定字符串的开始位置,第二个参数表示自字符串到哪里结束(如果省略,则将字符串的末尾作为结束位置)。
    • 如果传入的参数是负数,会把所有负值参数都转换为0。
var ss = "hello world";alert(ss.substring(3));  // "lo world"alert(ss.substring(3,7));  // "lo w"alert(ss.substring(-3));  // "hello world"alert(ss.substring(3,-4));  // "hel"

3)字符串位置方法

  • indexOf():返回指定的字符串首次出现的位置(从开头搜索)。
  • lastIndexOf():返回在字符串末尾开始查找字符串出现的位置。

这两个方法接收的参数:第一个参数是要搜索的字符串,第二个参数可选,表示从字符串的哪个位置开始搜索。

var ss = "hello world";alert(ss.indexOf("o"));  // 4alert(ss.indexOf("o",6));  // 7alert(ss.lastIndexOf("o"));  // 7alert(ss.lastIndexOf("o",6));  //4

4)trim()方法(ECMAScript 5)

创建一个字符串副本,删除前置及后缀的所有空格,然后返回结果。

var ss = "   hello world   ";alert(ss.trim());  // "hello world"

5)字符串大小写转换方法

  • toLowerCase():把字符串转换为小写。
  • toUpperCase():把字符串转换为大写。
  • toLocaleLowerCase()和toLocaleUpperCase()——针对特定地区的实现

6)字符串的模式匹配方法

  • match():查找找到一个或多个正则表达式的匹配。
    • 只接收一个参数,即正则表达式或RegExp对象。
    • 返回的是一个数组,数组的第一项是与整个模式匹配的字符串,之后的每一项保存着与正则表达式中的捕获组匹配的字符串。
var text = "cat, bat, sat, fat";var pattern = /.at/;var result = text.match(pattern);alert(result.index);  // 0alert(result[0]);  // "cat"alert(pattern.lastIndex);  // 0
  • search():查找与正则表达式相匹配的值。
    • 只接收一个参数,即正则表达式或RegExp对象。
    • 返回字符串中第一个匹配项的索引(从开头向后查找),如果没有则返回-1。
var text = "cat, bat, sat, fat";alert(text.search(/at/));  // 1
  • replace():在字符串中查找匹配的子串,并替换与正则表达式匹配的子串。
    • 第一个参数是一个RegExp对象或一个字符串。
    • 第二个参数是一个字符串或一个函数。
var text = "cat, bat, sat, fat";alert(text.replace("at", "ond"));  // cond, bat, sat, fatalert(text.replace(/at/g, "ond"));  // cond, bond, sond, fond
  • split():把字符串分割为字符串数组。
    • 第一个参数即为分隔符,可以是字符串,也可以是RegExp对象。如果是个空字符串 (“”) ,那么每个字符之间都会被分割。
    • 第二个参数可选,用于指定数组的大小,以便确保返回的数组不会超过既定大小。
var str = "How are you doing today?";alert(str.split(""));  // H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,? alert(str.split(" "));  // How,are,you,doing,today? alert(str.split(" ",2));  // How,are 

7)localeCompare()方法:用于比较两个字符串。

比较 返回值 字符串在字母表中应该排在字符串参数之前 返回一个负数(大多数情况下是-1) 字符串等于字符串参数 返回0 字符串在字母表中应该排在字符串参数之后 返回一个正数(大多数情况下是1)

8)fromCharCode()方法

接收一或多个字符编码,然后将它们转换成一个字符串。
从本质上看,这个方法与实例charCodeAt()执行的是相反的操作。

alert(String.fromCharCode(104,101,108,108,111));  //"hello"

9)HTML方法

返回了加入适当HTML标签的字符串。

方法 描述 anchor() 创建 HTML 锚。 big() 用大号字体显示字符串。 blink() 显示闪动字符串。 bold() 使用粗体显示字符串。 fixed() 以打字机文本显示字符串。 fontcolor() 使用指定的颜色来显示字符串。 fontsize() 使用指定的尺寸来显示字符串。 italics() 使用斜体显示字符串。 link() 将字符串显示为链接。 small() 使用小字号来显示字符串。 strike() 使用小字号来显示字符串。 sub() 把字符串显示为下标。 sup() 把字符串显示为上标。

【注】这些尽量不使用,因为它们创建的标记通常无法表达语义。

阅读全文
0 0
原创粉丝点击