包装对象String

字符串相关介绍:

创建方式:

        var str = new String("abc"); --object

        var str=“abc”; --string

字符串属于类数组 :        

        类数组的概念:也叫伪数组,在js中有一些对象它也拥有length属性,且拥有为非负整数的属性(索引),但是它又不能调用数组的方法,这种对象被称为类数组对象。

        字符串是类数组;arguments是类数组

为什么基本类型具有属性和方法 :

        包装对象的概念:当要操作字符串、数字、布尔值的属性时,js会在内存中自动创建一个对象,用来对内置类型进行包装,使内置类型暂时拥有普通对象功能,可以存取属性,一旦引用结束,包装对象自动销毁。

字符串的方法:

charAt(num): 返回对应字符串索引的内容

var str = '我很喜欢javascript';

console.log(str.charAt(2));  //喜
console.log(str[2]);  //喜

charCodeAt(num): 返回对应的字符串索引的内容的unicode编码

var str = '我很喜欢javascript';
      
console.log(str.charCodeAt(7)); //97
console.log(str.charCodeAt(2)); //21916
console.log(str.charCodeAt(3)); //27426

String.fromCharCode(unicode编码);将参数中的unicode编码返回成对应的字符串的内容, 多个编码用逗号分隔。

console.log(String.fromCharCode(25105, 24456, 21916, 27426, 20320));  //我很喜欢你

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

var str = '    abc de ffff     ';

console.log(str.trim());  //abc de ffff

replace() 替换,这个方法接受两个参数:第一个参数可以是一个 RegExp 对象或者一个字符串,第二个参数可以是一个字符串或者一个函数。如果第一个参数是字符串,那么只会替换第一个子字符串

var str = 'hellohello';

console.log(str.replace('e', '*'));  //h*llohello

split()根据分隔符、将字符串拆分成数组。把一个字符串分割成一个数组。通过传递一个参数来分割。第一个参数就是分割字符串的符号。如果参数为空,也是数组,只有一个数据。第二个参数用来限制数组的长度,多余的切掉

var str = 'abcdefg';

console.log(str.split()); // ["abcdefg"]
console.log(str.split('d')); // ["abc", "efg"]
console.log(str.split('')); //["a", "b", "c", "d", "e", "f", "g"]
console.log(str.split('', 5)); // ["a", "b", "c", "d", "e"]

// 测试: abcdefg变成gfedcba
var str1 = 'abcdefg'

console.log(str1.split('').reverse().join('')); //gfedcba

substring():用来截取字符串的内容

var str = 'javascript';
//没有参数全部截取。相当于从第0位开始截取。
console.log(str.substring()); //javascript
//一个参数代表截取从参数的位置往后的字符串。
console.log(str.substring(2)); //vascript
//两个参数代表截取两个参数之间的字符串,包括第一个参数的位置。
console.log(str.substring(2, 6)); //vasc
//两个参数的时候,当第二个参数小于第一个参数,自动交换位置。
console.log(str.substring(6, 2)); //vasc
//如果是负数,当做0来处理。
console.log(str.substring(1, -5)); //j
console.log(str.substring(0, 1)); //j
console.log(str.substring(1, 0)); //j

substr(start, length); 用来截取字符串的内容

//start:开始的索引,如果为负数,从后往前进行数,包括开始的索引。
//length:截取的长度。

var str = 'javascript';

console.log(str.substr(2, 5)); //vascr
console.log(str.substr(-7, 5)); //ascri
console.log(str.substr(-2, 5)); //pt

大小写字母转换的方法:toUpperCase()转换成大写;toLowerCase()转换成小写

var str = 'HELLO';

console.log(str.toLowerCase());  //hello
console.log('javascript'.toUpperCase());  //JAVASCRIPT

字符串与数组公用方法:

1.slice() 截取字符串的方法, 如果为负数, 从后往前进行截取, 包括开始的索引。 

var str = 'javascriptjava';

console.log(str.slice(2, -3)); //vascriptj

2.indexOf和lastIndexOf(): 区别是如果第二个参数为负数, 数组是从后往前找, 字符串是当做0处理。 

var str = 'javascriptjava';

console.log(str.indexOf('a')); //1
console.log(str.indexOf('a', 2)); //3
console.log(str.indexOf('a', -5)); //1
console.log(str.indexOf('a', 0)); //1

3.concat(): 和数组方法使用一致。

var str = 'javascriptjava';

console.log(str.concat(str)); //javascriptjavajavascriptjava

猜你喜欢

转载自blog.csdn.net/qq_39264561/article/details/107015672