Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 71a26b5

Browse files
committed
update:字符串的常见方法
1 parent 7f2f60f commit 71a26b5

File tree

4 files changed

+115
-59
lines changed

4 files changed

+115
-59
lines changed

00-前端工具/01-VS Code的使用.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ VS Code用得熟不熟,首先就看你是否会用快捷键。以下列出的
7676

7777
- 「Cmd + 左右方向键」:在**整行**之间移动光标(很常用)。注:Win 的快捷键是「Fn + 左右方向键」
7878

79-
- 「Cmd + Shift + \」:在**代码块**之间移动光标。
79+
-`Cmd + Shift + \`」:在**代码块**之间移动光标。
8080

8181
### 删除操作
8282

03-JavaScript基础/21-内置对象:String.md

Lines changed: 106 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -162,30 +162,6 @@
162162
console.log(result2); // 打印结果:中
163163
```
164164

165-
### concat()
166-
167-
`concat()`:字符串的连接。
168-
169-
语法:
170-
171-
```javascript
172-
新字符串 = str1.concat(str2); //链接两个字符串
173-
```
174-
175-
这种方法基本不用,直接把两个字符串相加就好。
176-
177-
是的,你会发现,数组中也有`concat()`方法,用于数组的连接。这个方法在数组中用的挺多的。
178-
179-
代码举例:
180-
181-
```javascript
182-
var str1 = 'qiangu';
183-
var str2 = 'yihao';
184-
185-
var result = str1.concat(str2);
186-
console.log(result); // 打印结果:qianguyihao
187-
```
188-
189165
### indexOf()/lastIndexOf()
190166

191167
`indexOf()/lastIndexOf()`:获取指定字符的索引。
@@ -202,6 +178,8 @@
202178

203179
因此可以得出一个技巧:**如果获取的索引值为0,说明字符串是以查询的参数为开头的**
204180

181+
这个方法还可以指定第二个参数,用来 指定开始查找的位置。
182+
205183
**代码举例1**
206184

207185
```javascript
@@ -231,34 +209,76 @@
231209

232210
上方代码中,`indexOf()`方法中携带了两个参数,具体解释请看注释。
233211

234-
### 字符串的截取(重要)
212+
### concat()
213+
214+
`concat()`:字符串的连接。
215+
216+
语法:
217+
218+
```javascript
219+
新字符串 = str1.concat(str2); //链接两个字符串
220+
```
235221

236-
字符串的截取有好几个方法,下面分别讲解
222+
这种方法基本不用,直接把两个字符串相加就好
237223

238-
1、 **slice()**方法:
224+
是的,你会发现,数组中也有`concat()`方法,用于数组的连接。这个方法在数组中用得挺多的。
239225

240-
格式
226+
代码举例
241227

242228
```javascript
243-
字符串 = str.slice(索引1, 索引2); //两个参数都是索引值。
229+
var str1 = 'qiangu';
230+
var str2 = 'yihao';
231+
232+
var result = str1.concat(str2);
233+
console.log(result); // 打印结果:qianguyihao
244234
```
245235

246-
上面的参数,包左不包右。参数举例如下:
236+
### slice()
237+
238+
`slice()`:从字符串中截取指定的内容。不会修改原字符串,而是将及截取到的内容返回。
239+
240+
语法:
241+
242+
```javascript
243+
字符串 = str.slice(开始索引, 结束索引); //两个参数都是索引值。包左不包右。
244+
```
245+
246+
解释:上面的参数,包左不包右。参数举例如下:
247+
248+
- (2, 5) 截取时,包左不包右。
249+
250+
- (2) 表示**从指定的索引位置开始,截取到最后**
251+
252+
- (-3) 表示从倒数第几个开始,截取到最后。
253+
254+
- (1, -1) 表示从第一个截取到倒数第一个。
255+
256+
- (5, 2) 表示前面的大,后面的小,返回值为空。
257+
258+
### substring()
259+
260+
`substring()`:从字符串中截取指定的内容。和`slice()`类似。
261+
262+
语法:
263+
264+
```javascript
265+
字符串 = str.substring(开始索引, 结束索引); //两个参数都是索引值。包左不包右。
266+
```
247267

248-
- (2,5) 表示正常,包左不包右。
268+
`substring()``slice()`是类似的。但不同之处在于:
249269

250-
- (2) 表示**从指定的索引位置开始,剪到最后**
270+
- `substring()`不能接受负值作为参数。如果传递了一个**负值**,则默认使用0
251271

252-
- (-3) 表示从倒数第几个开始,剪到最后.
272+
- `substring()`还会自动调整参数的位置,如果第二个参数小于第一个,则自动交换。比如说, `substring(1, 0)`截取的是第一个字符。
253273

254-
- (5,2) 表示前面的大,后面的小,返回值为空。
274+
### substr()
255275

256-
2、**substr()**方法:
276+
`substr()`:从字符串中截取指定的内容。不会修改原字符串,而是将及截取到的内容返回。
257277

258-
格式
278+
语法
259279

260280
```javascript
261-
字符串 = srt.substr(索引值, 长度);
281+
字符串 = str.substr(开始索引, 截取的长度);
262282
```
263283

264284
参数举例:
@@ -271,52 +291,83 @@
271291

272292
- 不包括前大后小的情况。
273293

274-
### 一些特殊方法
294+
备注:ECMAscript 没有对 `substr()` 方法进行标准化,因此不建议使用它。
275295

276-
**1、trim()**:去除字符串前后的空白。
296+
### split() 【重要】
297+
298+
`split()`:将一个字符串拆分成一个数组。
299+
300+
语法:
277301

278-
代码举例:
279302

280303
```javascript
281-
//去除前后的空格,trim();
282-
var str1 = " a b c ";
283-
console.log(str1);
284-
console.log(str1.trim());
304+
数组 = split();
285305
```
286306

287-
打印结果:
288307

289-
![](http://img.smyhvae.com/20180202_1455.png)
308+
备注:`split()`这个方法在实际开发中用得非常多。一般来说,从接口拿到的json数据中,经常会收到类似于`"q, i, a, n"`这样的字符串,前端需要将这个字符串拆分成`['q', 'i', 'a', 'n']`数组,这个时候`split()`方法就排上用场了。
290309

291-
2、**replace()**:替换。
292310

293-
举例
311+
**代码举例1**
294312

295313
```javascript
296-
//replace()方法:替换
297-
var str2 = "Today is fine day,today is fine day !!!"
298-
console.log(str2);
299-
console.log(str2.replace("today","tomorrow")); //只能替换第一个today
300-
console.log(str2.replace(/today/gi,"tomorrow")); //这里用到了正则,才能替换所有的today
314+
315+
var str = "qian, gu, yi, hao"; // 用逗号隔开的字符串
316+
var array = str.split(","); // 将字符串 str 拆分成数组,通过逗号来拆分
317+
318+
console.log(array); // 打印结果是数组:["qian", " gu", " yi", " hao"]
301319
```
302320

303-
3、split():字符串变数组。
321+
**代码举例2**
304322

305323
```javascript
306324
//split()方法:字符串变数组
307325
var str3 = "生命壹号|许嵩|smyhvae";
308326

309327
console.log(str3);
328+
310329
console.log(str3.split()); // 无参数,表示:把字符串作为一个元素添加到数组中。
330+
311331
console.log(str3.split("")); //参数为空字符串,则表示:分隔字符串中每一个字符,分别添加到数组中
332+
312333
console.log(str3.split("|")); //参数为指定字符,表示:此字符将不会出现在数组的任意一个元素中
334+
313335
console.log(str3.split("")); //同理
314336
```
315337

316338
打印结果:
317339

318340
![](http://img.smyhvae.com/20180202_1503.png)
319341

342+
### 一些特殊方法
343+
344+
**1、trim()**:去除字符串前后的空白。
345+
346+
代码举例:
347+
348+
```javascript
349+
//去除前后的空格,trim();
350+
var str1 = " a b c ";
351+
console.log(str1);
352+
console.log(str1.trim());
353+
```
354+
355+
打印结果:
356+
357+
![](http://img.smyhvae.com/20180202_1455.png)
358+
359+
2、**replace()**:替换。
360+
361+
举例:
362+
363+
```javascript
364+
//replace()方法:替换
365+
var str2 = "Today is fine day,today is fine day !!!"
366+
console.log(str2);
367+
console.log(str2.replace("today","tomorrow")); //只能替换第一个today
368+
console.log(str2.replace(/today/gi,"tomorrow")); //这里用到了正则,才能替换所有的today
369+
```
370+
320371
### 大小写转换
321372

322373
举例:
@@ -326,6 +377,7 @@
326377

327378
//转换成小写
328379
console.log(str.toLowerCase());
380+
329381
//转换成大写
330382
console.log(str.toUpperCase());
331383
```

18-推荐链接/01-2019年Web前端最新导航.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,9 @@ Sass 是成熟、稳定、强大的 CSS 扩展语言。入门文档可以看:<
261261

262262
## 工具
263263

264+
265+
### 综合类
266+
264267
- CanIUse:<https://caniuse.com/>
265268

266269
浏览器兼容性查询。前端同学必须要知道。
@@ -307,6 +310,10 @@ Sass 是成熟、稳定、强大的 CSS 扩展语言。入门文档可以看:<
307310

308311
- OCR文字识别:<https://app.xunjiepdf.com/ocr>
309312

313+
### 图片类
314+
315+
- 图片转base64:<http://imgbase64.duoshitong.com/>
316+
310317
## 团队
311318

312319

README.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11

2-
3-
4-
52
## 项目介绍
63

74
- 项目地址:<https://github.com/qianguyihao/Web>
@@ -31,7 +28,7 @@
3128

3229
- 进群要求:少提问、少闲聊、多分享(长期潜水的,就不必了)。
3330

34-
你也可以关注微信公众号「**千古壹号**」,学习代码之外的技能。扫一扫你将发现一个全新的世界,而这将是一场美丽的意外:
31+
你也可以关注微信公众号「**千古壹号**」,学习代码之外的技能。扫一扫你将发现一个全新的世界,而这将是一场美丽的意外:
3532

3633
![](http://img.smyhvae.com/20190101.png)
3734

0 commit comments

Comments
 (0)