Skip to content

Commit

Permalink
docs: update array() (#8411)
Browse files Browse the repository at this point in the history
* docs: update array()

* Update index.md

* Update files/zh-cn/web/javascript/reference/global_objects/array/array/index.md

Co-authored-by: A1lo <yin199909@aliyun.com>

* Update files/zh-cn/web/javascript/reference/global_objects/array/array/index.md

Co-authored-by: A1lo <yin199909@aliyun.com>

* Update files/zh-cn/web/javascript/reference/global_objects/array/array/index.md

Co-authored-by: A1lo <yin199909@aliyun.com>

* Update files/zh-cn/web/javascript/reference/global_objects/array/array/index.md

Co-authored-by: A1lo <yin199909@aliyun.com>
  • Loading branch information
YangFong and yin1999 authored Sep 10, 2022
1 parent 351a284 commit 0faa84f
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,32 +16,39 @@ Array(element0, element1, /* … ,*/ elementN)
Array(arrayLength)
```

> **备注:** `Array()` 可以调用或不调用 [`new`](/zh-CN/docs/Web/JavaScript/Reference/Operators/new)。两者都会创建一个新的 `Array` 实例。
### 参数

- `elementN`
- : `Array` 构造器会根据给定的元素创建一个 JavaScript 数组,但是当仅有一个参数且为数字时除外(详见下面的 `arrayLength` 参数)。注意,后者仅适用于用 Array 构造器创建数组,而不适用于用方括号创建的数组字面量。
- `arrayLength`
- : 一个范围在 0 到 2^32 - 1 之间的整数,此时将返回一个 `length` 的值等于 `arrayLength` 的数组对象(言外之意就是该数组此时并没有包含任何实际的元素,不能理所当然地认为它包含 `arrayLength` 个值为 undefined 的元素)。如果传入的参数不是有效值,则会抛出 {{jsxref("RangeError")}} 异常
- : 如果传递给 `Array` 构造函数的唯一参数是 0到 2<sup>32</sup> - 1(包括)之间的整数,这将返回一个新的 JavaScript 数组,其 `length` 属性设置为该数字(注意:这意味着一个 `arrayLength` 空槽数组,而不是具有实际 `undefined` 值的槽——参见[稀疏数组](/zh-CN/docs/Web/JavaScript/Guide/Indexed_collections#sparse_arrays))。

### 异常

- {{jsxref("RangeError")}}
- : 如果只有一个参数(`arrayLength`)且其值不在 0 到 2<sup>32</sup> - 1(包括) 之间,则会触发异常。

## 示例

### 数组字面量

可以通过使用 [数组字面量](/zn-CN/docs/Web/JavaScript/Reference/Lexical_grammar#Array_literals) 创建数组
可以通过使用[数组字面量](/zh-CN/docs/Web/JavaScript/Reference/Lexical_grammar#数组字面量)创建数组

```js
let fruits = ['Apple', 'Banana'];
const fruits = ['Apple', 'Banana'];

console.log(fruits.length); // 2
console.log(fruits[0]); // "Apple"
```

### 单个参数的 Array 构造器

可以通过单个数字参数的构造器创建数组,数组的长度为传入的参数,该数组不包含任何实际的元素
可以通过单个数字参数的构造器创建数组,数组的长度为传入的参数,该数组不包含任何实际的元素

```js
let fruits = new Array(2);
const fruits = new Array(2);

console.log(fruits.length); // 2
console.log(fruits[0]); // undefined
Expand Down
24 changes: 12 additions & 12 deletions files/zh-cn/web/javascript/reference/lexical_grammar/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ console.log("Hello world");
- `transient`
- `volatile`

另外,直接量`null``true``false`同样不能被当成标识使用。
另外,字面量 `null``true``false`同样不能被当成标识使用。

### 保留字的使用

Expand All @@ -218,17 +218,17 @@ a = { import: "test" }.
function import() {} // Illegal.
```

## 直接量
## 字面量

### 空直接量
### 空字面量

`更多信息可以参考null`

```js
null
```

### 布尔直接量
### 布尔字面量

更多信息可以参考[`Boolean`](/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)

Expand All @@ -237,7 +237,7 @@ true
false
```

### 数值直接量
### 数值字面量

#### 十进制

Expand All @@ -250,7 +250,7 @@ false
0777 // 转换为八进制 777,十进制 511
```

请注意,十进制数值直接量可以以 0 开头,但是如果 0 以后的最高位比 8 小,数值将会被认为是八进制而不会报错。更多信息可以参考 {{bug(957513)}} 和 [`parseInt()`](/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt#Octal_interpretations_with_no_radix)
请注意,十进制数值字面量可以以 0 开头,但是如果 0 以后的最高位比 8 小,数值将会被认为是八进制而不会报错。更多信息可以参考 {{bug(957513)}} 和 [`parseInt()`](/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt#Octal_interpretations_with_no_radix)

#### 二进制

Expand Down Expand Up @@ -285,7 +285,7 @@ var m = 0o644; // 420
0XA // 10
```

### 对象直接量
### 对象字面量

更多信息可以参考 {{jsxref("Object")}} 和[对象初始化器](/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer)

Expand All @@ -299,15 +299,15 @@ var o = {a, b, c};
var o = { a: a, b: b, c: c };
```

### 数组直接量
### 数组字面量

更多信息可以参考 {{jsxref("Array")}}。

```js
[1954, 1974, 1990, 2014]
```

### 字符串直接量
### 字符串字面量

```js
'foo'
Expand Down Expand Up @@ -341,20 +341,20 @@ ECMAScript 6 新增特性。使用 Unicode 编码转义,任何字符都可以
'\uD87E\uDC04'
```

### 正则表达式直接量
### 正则表达式字面量

更多信息可以参考 [`RegExp`](/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp)

```js
/ab+c/g

// 一个空的正则表达式直接量
// 一个空的正则表达式字面量
// 必须有一个空的非捕获分组
// 以避免被当成是行注释符号
/(?:)/
```

### 模板直接量
### 模板字面量

更多信息可以参考[template strings](/en-US/docs/Web/JavaScript/Reference/template_strings)

Expand Down

0 comments on commit 0faa84f

Please sign in to comment.