Skip to content

Commit

Permalink
zh-cn: update "concat"
Browse files Browse the repository at this point in the history
  • Loading branch information
Yanko1013 committed Dec 6, 2024
1 parent c6c59f9 commit aed8391
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
---
title: Array.prototype.concat()
slug: Web/JavaScript/Reference/Global_Objects/Array/concat
l10n:
sourceCommit: 04e4faf5cbd0307b3b1e122c436110f1d197193a
---

{{JSRef}}

**`concat()`** 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
{{jsxref("Array")}} 实例的 **`concat()`** 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

{{EmbedInteractiveExample("pages/js/array-concat.html","shorter")}}

Expand All @@ -20,7 +22,7 @@ concat(value0, value1, /* … ,*/ valueN)

### 参数

- `valueN` {{optional_inline}}
- `value1`, …, `valueN` {{optional_inline}}
- : 数组和/或值,将被合并到一个新的数组中。如果省略了所有 `valueN` 参数,则 `concat` 会返回调用此方法的现存数组的一个[浅拷贝](/zh-CN/docs/Glossary/Shallow_copy)。详情请参阅下文描述。

### 返回值
Expand All @@ -29,7 +31,7 @@ concat(value0, value1, /* … ,*/ valueN)

## 描述

`concat` 方法创建一个新数组。该数组将首先由调用它的对象中的元素填充。然后,对于每个参数,它的值将被连接到数组中——对于普通对象或基元,参数本身将成为最终数组的一个元素;对于属性[`Symbol.isConcatSpreadable`](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol/isConcatSpreadable)设置为真的数组或类数组对象,参数的每个元素都将是独立地添加到最终数组中。`concat` 方法不会递归到嵌套数组参数中。
`concat` 方法创建一个新数组。该数组将首先由调用它的对象中的元素填充。然后,对于每个参数,它的值将被连接到数组中——对于普通对象或基元,参数本身将成为最终数组的一个元素;对于属性 [`Symbol.isConcatSpreadable`](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol/isConcatSpreadable) 设置为真的数组或类数组对象,参数的每个元素都将是独立地添加到最终数组中。`concat` 方法不会递归到嵌套数组参数中。

`concat()` 方法是一种[复制方法](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array#复制方法和修改方法)。它不会更改 `this` 或作为参数提供的任何数组,而是返回包含与原始数组中的元素相同的元素的[浅拷贝](/zh-CN/docs/Glossary/Shallow_copy)

Expand Down Expand Up @@ -127,7 +129,13 @@ console.log([1, 2].concat([3, , 5])); // [1, 2, 3, empty, 5]
```js
console.log(Array.prototype.concat.call({}, 1, 2, 3)); // [{}, 1, 2, 3]
console.log(Array.prototype.concat.call(1, 2, 3)); // [ [Number: 1], 2, 3 ]
const arrayLike = { [Symbol.isConcatSpreadable]: true, length: 2, 0: 1, 1: 2 };
const arrayLike = {
[Symbol.isConcatSpreadable]: true,
length: 2,
0: 1,
1: 2,
2: 99, // ignored by concat() since length is 2
};
console.log(Array.prototype.concat.call(arrayLike, 3, 4)); // [1, 2, 3, 4]
```

Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,28 @@
---
title: String.prototype.concat()
slug: Web/JavaScript/Reference/Global_Objects/String/concat
l10n:
sourceCommit: 04e4faf5cbd0307b3b1e122c436110f1d197193a
---

{{JSRef}}

**`concat()`** 方法将字符串参数连接到调用的字符串,并返回一个新的字符串。
{{jsxref("String")}} 值的 **`concat()`** 方法将字符串参数连接到调用的字符串上,并返回一个新的字符串。

{{EmbedInteractiveExample("pages/js/string-concat.html")}}

## 语法

```js-nolint
concat()
concat(str1)
concat(str1, str2)
concat(str1, str2, /* …, */ strN)
```

### 参数

- `strN`
- `str1`, …, `strN`
- : 要连接到 `str` 的一个或多个字符串。

### 返回值
Expand All @@ -28,7 +31,7 @@ concat(str1, str2, /* …, */ strN)

## 描述

`concat()` 函数将字符串参数连接到调用的字符串并返回一个新字符串。对原字符串或返回的字符串所做的更改不会影响另一个字符串。
`concat()` 函数将字符串参数连接到调用的字符串并返回一个新字符串。

如果参数不是字符串类型,它们在连接之前将会被转换成字符串。

Expand Down

0 comments on commit aed8391

Please sign in to comment.