JS基本包装类型之三(String)

1. 基本数据类型和基本包装类型

  这里以字符串类型来讲解基本数据类型和基本包装类型.

  JS中存在基本数据类型String(typeof返回"string"), 也存在基本包装数据类型String(typeof返回"object"). 所以为了便于区分, 我一般将基本数据类型的字符串记做string类型, 正好与typeof操作符的返回值是一样的.

var stringObj = new String("hello world!");
var str = stringObj.toString();
console.log(typeof stringObj);//"object"
console.log(typeof str);//"string"

实际上, 基本包装类型属于引用类型. 所以typeof操作符返回了"object". 每次读取一个基本数据类型的时候, 后台就会临时创建一个对应的基本包装类型的对象. 从而让我们能够调用一些方法来操作这些数据. 举个例子:

var s1 = "some text";
var s2 = s1.substring(2);
console.log(s2);

这个例子中的s1包含一个字符串, 字符串当然是基本数据类型string. 下一行调用该字符串的substring()方法. 当第二行代码访问s1时, 访问过程处于一种读取模式, 即要从内存中读取该字符串的值. 在读取模式中访问字符串时, 后台自动完成了下列处理:

var sTemp = new String(s1); console.log(typeof sTemp);
var s2 =sTemp.substring(2);
sTemp = null;

1) 创建String类型的一个临时实例;

2) 在该临时实例上调用指定的方法;

3) 销毁这个实例.

2. 基本包装类型之String

length属性

  stringValue.length

访问字符串中特定字符的方法

  stringValue.charAt(index)

  stringValue[index]

连接字符串

  stringValue.concat(new_string1, new_string2, ...);

  加号操作符

提取子字符串

  stringValue.slice()

  stringValue.substr()

  stringValue.substring()

查找子字符串位置

  stringValue.indexOf()

  stringValue.lastIndexOf()

大小写转换

  stringValue.toLowerCase()

  stringValue.toUpperCase()

正则匹配

trim()方法

  stringValue.trim() 返回字符串副本, 删除前置及后缀的所有空格.

localeCompare()方法

  stringValue.localeCompare(new_string) 比较两个字符串

  

  

上一篇:Chapter 4 Invitations——23


下一篇:Linux下使用openVPN连接到某个内网