aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/javascript/reference/statements/default/index.html
blob: c1f3f6b9235af880810148bf666b6ce021d63b4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
---
title: default
slug: Web/JavaScript/Reference/Statements/default
tags:
  - JavaScript
  - Keyword
  - Switch
  - export
translation_of: Web/JavaScript/Reference/Statements/switch
translation_of_original: Web/JavaScript/Reference/Statements/default
---
<div>{{jsSidebar("Statements")}}</div>

<p>В JavaScript ключевое слово <strong>default </strong>используется в двух случаях: внутри конструкции {{jsxref("Statements/switch", "switch")}} или с конструкцией {{jsxref("Statements/export", "export")}}.</p>

<h2 id="Синтаксис">Синтаксис</h2>

<p>В конструкции {{jsxref("Statements/switch", "switch")}}:</p>

<pre class="syntaxbox">switch (expression) {
  case value1:
    // Выражение выполнится, когда значение expression соответствует value1
    [break;]
  default:
    // Выражение выполнится, когда ни одно из значений не будет соответствовать значению expression
    [break;]
}</pre>

<p>С конструкцией {{jsxref("Statements/export", "export")}}:</p>

<pre class="syntaxbox">export default <em>nameN</em> </pre>

<h2 id="Описание">Описание</h2>

<p>Для получения дополнительной информации смотрите:</p>

<ul>
 <li>{{jsxref("Statements/switch", "switch")}}</li>
 <li>{{jsxref("Statements/export", "export")}}</li>
</ul>

<h2 id="Примеры">Примеры</h2>

<h3 id="Использование_default_в_switch">Использование <code>default</code> в  <code>switch</code></h3>

<p>В следующем примере, если <code>expr</code> имеет значение  "Апельсины" или "Яблоки", то программа сопоставит это значение с "Апельсины" или с "Яблоки", а затем выполнит соответствующее выражение. В других случаях поможет ключевое слово <strong>default,</strong>  выполня связанное выражение.</p>

<pre class="brush: js">switch (expr) {
  case 'Апельсины':
    console.log('Апельсины стоят $0.59 за фунт.');
    break;
  case 'Яблоки':
    console.log('Яблоки стоят $0.32 за фунт.');
    break;
  default:
    console.log(`Извините, у нас закончились ${expr}.`);
}</pre>

<h3 id="Использование_default_с_export">Использование <code>default</code> с<font face="Open Sans, arial, sans-serif"> </font><code>export</code></h3>

<p>При необходимости экспорта единственного значения или резервирования (fallback) значения для модуля, можно воспользоваться<strong> </strong>экспортом по-умолчанию: </p>

<pre class="brush: js">// модуль "my-module.js"
let cube = function cube(x) {
  return x * x * x;
};
export default cube;</pre>

<p>Тогда, в другом файле JavaScript, становится возможным просто импортировать экспортируемое по-умолчанию значение:</p>

<pre class="brush: js">// модуль "my-module.js"
import myFunction from 'my-module';
console.log(myFunction(3)); // 27
</pre>

<h2 id="Спецификация">Спецификация</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Спецификация</th>
   <th scope="col">Статус</th>
   <th scope="col">Комментарий</th>
  </tr>
  <tr>
   <td>{{SpecName('ES6', '#sec-switch-statement', 'switch statement')}}</td>
   <td>{{Spec2('ES6')}}</td>
   <td></td>
  </tr>
  <tr>
   <td>{{SpecName('ES6', '#sec-exports', 'Exports')}}</td>
   <td>{{Spec2('ES6')}}</td>
   <td></td>
  </tr>
  <tr>
   <td>{{SpecName('ESDraft', '#sec-switch-statement', 'switch statement')}}</td>
   <td>{{Spec2('ESDraft')}}</td>
   <td></td>
  </tr>
  <tr>
   <td>{{SpecName('ESDraft', '#sec-exports', 'Exports')}}</td>
   <td>{{Spec2('ESDraft')}}</td>
   <td></td>
  </tr>
 </tbody>
</table>

<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>

<p>{{Compat("javascript.statements.default")}}</p>

<h2 id="Смотрите_также">Смотрите также</h2>

<ul>
 <li>{{jsxref("Statements/export", "export")}}</li>
 <li>{{jsxref("Statements/switch", "switch")}}</li>
</ul>