2018-10-10 22:03:03 +00:00
---
id: ac6993d51946422351508a41
2021-03-13 17:31:57 +00:00
title: 截断字符串
2018-10-10 22:03:03 +00:00
challengeType: 5
2021-01-12 16:18:51 +00:00
forumTopicId: 16089
2021-01-13 02:31:00 +00:00
dashedName: truncate-a-string
2018-10-10 22:03:03 +00:00
---
2020-12-16 07:37:30 +00:00
# --description--
2018-10-10 22:03:03 +00:00
2021-03-13 17:31:57 +00:00
如果传入的字符串(第一个参数)的长度大于传入的值(第二个参数),请在这个位置截断它, 并在后面加上 `...` ,然后返回结果。
2018-10-10 22:03:03 +00:00
2020-12-16 07:37:30 +00:00
# --hints--
2018-10-10 22:03:03 +00:00
2021-03-13 17:31:57 +00:00
`truncateString("A-tisket a-tasket A green and yellow basket", 8)` 应返回 `A-tisket...` 。
2018-10-10 22:03:03 +00:00
2020-12-16 07:37:30 +00:00
```js
assert(
truncateString('A-tisket a-tasket A green and yellow basket', 8) ===
'A-tisket...'
);
```
2021-03-13 17:31:57 +00:00
`truncateString("Peter Piper picked a peck of pickled peppers", 11)` 应返回 `Peter Piper...` 。
2018-10-10 22:03:03 +00:00
```js
2020-12-16 07:37:30 +00:00
assert(
truncateString('Peter Piper picked a peck of pickled peppers', 11) ===
'Peter Piper...'
);
```
2018-10-10 22:03:03 +00:00
2021-03-13 17:31:57 +00:00
`truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length)` 应返回 `A-tisket a-tasket A green and yellow basket` 。
2018-10-10 22:03:03 +00:00
2020-12-16 07:37:30 +00:00
```js
assert(
truncateString(
'A-tisket a-tasket A green and yellow basket',
'A-tisket a-tasket A green and yellow basket'.length
) === 'A-tisket a-tasket A green and yellow basket'
);
2018-10-10 22:03:03 +00:00
```
2021-03-13 17:31:57 +00:00
`truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length + 2)` 应返回 `A-tisket a-tasket A green and yellow basket` 。
2018-10-10 22:03:03 +00:00
2020-12-16 07:37:30 +00:00
```js
assert(
truncateString(
'A-tisket a-tasket A green and yellow basket',
'A-tisket a-tasket A green and yellow basket'.length + 2
) === 'A-tisket a-tasket A green and yellow basket'
);
```
2018-10-10 22:03:03 +00:00
2021-03-13 17:31:57 +00:00
`truncateString("A-", 1)` 应返回字符串 `A...` 。
2018-10-10 22:03:03 +00:00
2020-12-16 07:37:30 +00:00
```js
assert(truncateString('A-', 1) === 'A...');
```
2018-10-10 22:03:03 +00:00
2021-03-13 17:31:57 +00:00
`truncateString("Absolutely Longer", 2)` 应返回 `Ab...` 。
2018-10-10 22:03:03 +00:00
```js
2020-12-16 07:37:30 +00:00
assert(truncateString('Absolutely Longer', 2) === 'Ab...');
2018-10-10 22:03:03 +00:00
```
2020-08-13 15:24:35 +00:00
2021-01-13 02:31:00 +00:00
# --seed--
## --seed-contents--
```js
function truncateString(str, num) {
return str;
}
truncateString("A-tisket a-tasket A green and yellow basket", 8);
```
2020-12-16 07:37:30 +00:00
# --solutions--
2021-01-13 02:31:00 +00:00
```js
function truncateString(str, num) {
if (num >= str.length) {
return str;
}
return str.slice(0, num) + '...';
}
truncateString("A-tisket a-tasket A green and yellow basket", 8);
```