Javascript字符串
时间:2022-05-07
本文章向大家介绍Javascript字符串,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
## 定义
```
var str = new String("abcdefg");
var str = "abcdefg";
```
## 常用方法
### 字符方法
1.charAt(index):返回下标为index的字符
```
//字符串“Hello World!”下标为1的字符
var str = "Hello World!";
console.log(str.charAt(1)); // e
```
2.方括号[index]:返回下标为index的字符(IE8以前不支持,会返回undefined)
```
//字符串“Hello World!”下标为1的字符的ASCII码
var str = "Hello World!";
console.log(str[1]); // e
```
3.charCodeAt():返回下标为index的字符编码(ASCII码)
```
//字符串“Hello World!”下标为1的字符的ASCII码
var str = "Hello World!";
console.log(str.charCodeAt(1)); // 101
```
### 拼接字符串
1.str.concat(str1,str2,str3....):str与str1,str2,str3...进行拼接
```
// 将"Hello"," World!","My Blog!"三个字符串拼接起来
var str1 = "Hello";
var str2 = " World!";
var str3 = "My Blog!";
var str4 = str1.concat(str2,str3);
console.log(str4); // Hello World!My Blog!
```
2.加号+
```
// 将"Hello"," World!","My Blog!"三个字符串拼接起来
var str1 = "Hello";
var str2 = " World!";
var str3 = "My Blog!";
var str4 = str1 + str2 + str3;
console.log(str4); // Hello World!My Blog!
```
### 剪切字符串
1.str.slice(start,end):获取[start,end)之间的字符串
若start,end为正数,从前往后计算,获取[start,end)之间的字符串,注意end是开区间,开头第一个字符的下标从0开始
若start,end为负数,从后往前计算,获取[start,end)之间的字符串,末尾第一个字符的下标从-1开始
```
var str = "Hello World!";
//获取str的“llo”
var subStr1 = str.slice(2,5);
console.log(subStr1); // llo
//获取str的“orl”
var subStr2 = str.slice(-5,-2);
console.log(subStr2); //orl
```
2.str.substr(start,length):从下标为start位置开始获取长度为length的字符串。
注意,若start为负数的话,表示从后向前进行计算start的位置,-1表示最后一个字符
```
var str = "Hello World!";
// 获取字符串Hello
var subStr1 = str.substr(0,5);
console.log(subStr1); // Hello
//获取字符串World
var subStr2 = str.substr(-6,5);
console.log(subStr2); // World
```
3.str.substring(start,end):提取[start,end)之间的字符串,注意start,end都要非负
```
var str = "Hello World!";
//获取str的“llo”
var subStr1 = str.substring(2,5);
console.log(subStr1); // llo
```
### 字符串位置方法
1.indexOf(searchvalue,fromindex):从fromindex开始向后寻找searchvalue首次出现的位置,默认为0。
```
// 获取下列字符串的字符‘o’的所有位置
var str = "Hello World! Welcome to my Blog!";
var arr = [];
var pos = str.indexOf('o');
arr.push(pos);
while(true){
pos = str.indexOf('o',pos+1);
if(pos == -1) break;
arr.push(pos);
}
console.log(arr); // [4, 7, 17, 22, 29]
```
1.lastIndexOf(searchvalue,fromindex)从fromindex开始向前寻找searchvalue首次出现的位置,默认为0。
```
// 获取下列字符串的字符‘o’的所有位置
var str = "Hello World! Welcome to my Blog!";
var arr = [];
var pos = str.lastIndexOf('o');
arr.push(pos);
while(true){
pos = str.lastIndexOf('o',pos-1);
if(pos == -1) break;
arr.push(pos);
}
console.log(arr); // [29, 22, 17, 7, 4]
```
### 删除多余空格
trim():去除字符串两端多余的空格
```
//由于输出字符串空格不好看出来,所以输出长度看看
var str = " abc ";
console.log(str.length); // 5
str = str.trim();
console.log(str.length); //3
```
### 比较字符串
str1.localeCompare(str2):
返回0:字符串str1等于参数str2。
返回负数:字符串str1的字典序先于参数str2。
返回正数:字符串str2的字典序后于参数str2。
```
var str1 = "yellow";
console.log(str1.localeCompare("yellow")); //0
console.log(str1.localeCompare("zoo")); //-1
console.log(str1.localeCompare("abc")); //1
```
### 模式匹配
涉及到正则表达式,内容太多,以后专门写个博文总结。
#### 参考文献:
- [1]《javascript高级程序设计》
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- mysqlbinlog命令详解记一次有函数的标量子查询导致的查询缓慢
- ctfshow红包题-web
- 微信支付一面(C++后台)
- 强网杯-随便注
- LeetCode 1547. Minimum Cost to Cut a Stick(动态规划)
- 管道符漏洞
- 06-STM32+ESP8266+AIR202远程升级方案-移植STM32+ESP8266实现利用http或https远程更新STM32程序到自己的项目(定时访问升级,备份升级)
- 反射
- 记一次sys 数据库的修复
- 使用Django管理数据库表
- php学习day3
- mysqlbinlog命令详解
- XtraBackup工具详解 Part 9 innobackupex命令总结
- ctfhub-信息泄露-Git泄露
- php学习day2