typescript笔记(八)
一、string
1)、语法:
var txt = new String("string");
或者更简单方式:
var txt = "string";
2)、对象属性:constructor、length、prototype
1、constructor创建该对象的函数的引用。
例如:
var str = new String ("this is string")
console.log("str.constructor is:"+ str.constructor) // str.constructor is:function String() { [native code] }
2、length返回字符串的长度。
例如:
// var nume = new String('hello')
// console.log("length"+nume.length) //5
3、prototype允许您向对象添加属性和方法。
例如:
function emp(id:number,name:string){
this.id=id;
this.name= name;
}
var em = new emp(456,"hebei")
emp.prototype.height = '180'
console.log("员工号"+em.id) //员工号456
console.log("员工姓名"+em.name) //员工姓名hebei
console.log("员工身高"+em.height) //员工身高180
3)、对象方法:charAt()、charCodeAt()、concat()、indexOf()、lastIndexOf()、localeCompare()、match()、replace()、search()、slice()、split()、substr()、substring()、toLocaleLowerCase()、toLocaleUpperCase()、toLowerCase()、toString()、toUpperCase()、valueOf()
1、charAt()返回在指定位置的字符。
例如:
var str = new String("round")
console.log("str.charAt(0)" + str.charAt(0)) //str.charAt(0)r
console.log("str.charAt(3)" + str.charAt(3)) //str.charAt(3)n
2、charCodeAt()返回在指定的位置的字符的 Unicode 编码。
例如:
var str = new String('round')
console.log("str.charCodeAt(0)" + str.charCodeAt(0))
console.log("str.charCodeAt(3)" + str.charCodeAt(3))
console.log("str.charCodeAt(4)" + str.charCodeAt(4))
结果:
str.charCodeAt(0)114
str.charCodeAt(3)110
str.charCodeAt(4)100
3、concat连接两个或更多字符串,并返回新的字符串。
例如:
var arr : string = "回来的"
console.log(arr); //回来的
let a : string = "吴刚"
console.log(arr.concat(a)); //回来的吴刚
4、indexOf()返回某个指定的字符串值在字符串中首次出现的位置。
例如:
var str1 : string = "hellowrold";
console.log(str1.indexOf('ll')) //2
5、lastIndexOf()从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
例如:
var str1 : string = "hellowrold";
console.log(str1.lastIndexOf('o')) //7
6、localeCompare()用本地特定的顺序来比较两个字符串。
例如:
var str1 = new String( "This is beautiful string" );
var index = str1.localeCompare( "This is beautiful string");
console.log("localeCompare first :" + index ); //0 0 - 如果字符串匹配100%。
var str1 = new String( "This is beautiful string" );
var index = str1.localeCompare( "hebeiThis is beautiful string");
console.log("localeCompare first :" + index ); // 1 1 - 不匹配,参数值位于区域设置排序顺序中字符串对象的值之前。
var str1 = new String( "This is beautiful string" );
var index = str1.localeCompare( "This is beautiful stringhebei");
console.log("localeCompare first :" + index ); //-1 负值 - 不匹配,参数值位于本地排序顺序中字符串对象的值之后。
返回值:
0 - 如果字符串匹配100%。
1 - 不匹配,参数值位于区域设置排序顺序中字符串对象的值之前。
负值 - 不匹配,参数值位于本地排序顺序中字符串对象的值之后。
7、match()查找找到一个或多个正则表达式的匹配。
例如:
let str="1 plus 2 equal 3"
let s = str.match(/\d+/g); //检索是否有数字
console.log(s) //1,2,3
8、replace()替换与正则表达式匹配的子串
例如:
let re = /(\w+)\s(\w+)/;
let str = "han hebei";
let newstr = str.replace(re, "$2, $1");
console.log(newstr); // hebei,han
9、search()检索与正则表达式相匹配的值
例如:
let re = /apples/gi;
let str = "Apples are round, and apples are juicy.";
if (str.search(re) == -1 ) {
console.log("Does not contain Apples" );
} else {
console.log("Contains Apples" );
} //结果 Contains Apples
10、split()把字符串分割为子字符串数组。
例如:
let str = "hello";
let s = str.split('e');
console.log(s) //['h','llo']
11、slice()提取字符串的片断,并在新的字符串中返回被提取的部分。
例如:
let str = "hello";
let s = str.slice(1);
console.log(s) //ello
12、substr()从起始索引号提取字符串中指定数目的字符。
例如:
let str="Hello world!"
document.write(str.substr(3)) //lo world
13、substring()提取字符串中两个指定的索引号之间的字符。
例如:
let str="Hello!"
document.write(str.substring(2,4)) //ll
14、toLocaleLowerCase()根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射。
例如:
let str = "Runoob Google";
console.log(str.toLocaleLowerCase( )); // runoob google
15、toLocaleUpperCase()据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射。
例如:
let str = "Runoob Google";
console.log(str.toLocaleUpperCase( )); // RUNOOB GOOGLE
16、toLowerCase()把字符串转换为小写。
例如:
let str = "Runoob Google";
console.log(str.toLowerCase( )); // runoob google
17、toString()返回字符串。
例如:
var str = "Runoob";
console.log(str.toString( )); // Runoob
18、toUpperCase()把字符串转换为大写。
例如:
let str = "hello wrold";
console.log(str.toUpperCase( )); // HELLO WROLD
19、valueOf()返回指定字符串对象的原始值;当调用该方法的对象不是 String 时抛出 TypeError 异常。。
例如:
var str = new String("Runoob");
console.log(str.valueOf( )); // Runoob