aboutsummaryrefslogtreecommitdiff
path: root/files/ko/web/javascript
diff options
context:
space:
mode:
Diffstat (limited to 'files/ko/web/javascript')
-rw-r--r--files/ko/web/javascript/reference/classes/index.html36
-rw-r--r--files/ko/web/javascript/reference/classes/private_class_fields/index.html16
-rw-r--r--files/ko/web/javascript/reference/functions/arrow_functions/index.html44
-rw-r--r--files/ko/web/javascript/reference/functions/default_parameters/index.html26
-rw-r--r--files/ko/web/javascript/reference/global_objects/eval/index.html32
-rw-r--r--files/ko/web/javascript/reference/global_objects/globalthis/index.html4
-rw-r--r--files/ko/web/javascript/reference/global_objects/infinity/index.html2
-rw-r--r--files/ko/web/javascript/reference/global_objects/nan/index.html6
-rw-r--r--files/ko/web/javascript/reference/global_objects/number/negative_infinity/index.html2
-rw-r--r--files/ko/web/javascript/reference/global_objects/object/entries/index.html10
-rw-r--r--files/ko/web/javascript/reference/global_objects/object/setprototypeof/index.html14
-rw-r--r--files/ko/web/javascript/reference/global_objects/regexp/exec/index.html10
-rw-r--r--files/ko/web/javascript/reference/global_objects/regexp/index.html18
-rw-r--r--files/ko/web/javascript/reference/global_objects/regexp/regexp/index.html4
-rw-r--r--files/ko/web/javascript/reference/global_objects/regexp/test/index.html8
-rw-r--r--files/ko/web/javascript/reference/global_objects/string/lastindexof/index.html8
-rw-r--r--files/ko/web/javascript/reference/global_objects/string/slice/index.html12
-rw-r--r--files/ko/web/javascript/reference/global_objects/undefined/index.html14
-rw-r--r--files/ko/web/javascript/reference/lexical_grammar/index.html62
-rw-r--r--files/ko/web/javascript/reference/operators/await/index.html12
20 files changed, 170 insertions, 170 deletions
diff --git a/files/ko/web/javascript/reference/classes/index.html b/files/ko/web/javascript/reference/classes/index.html
index 8bb836788a..3e6bfc0a8f 100644
--- a/files/ko/web/javascript/reference/classes/index.html
+++ b/files/ko/web/javascript/reference/classes/index.html
@@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Classes
<p>Class를 정의하는 한 가지 방법은 <strong>class 선언</strong>을 이용하는 것입니다. class를 선언하기 위해서는 클래스의 이름(여기서 "Rectangle")과 함께 <code>class</code> 키워드를 사용해야 합니다.</p>
-<pre class="brush: js notranslate">class Rectangle {
+<pre class="brush: js ">class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
@@ -26,7 +26,7 @@ translation_of: Web/JavaScript/Reference/Classes
<p><strong>함수 선언</strong>과 <strong>클래스 선언</strong>의 중요한 차이점은 험수의 경우 정의하기 하기 전에 호출할 수 있지만, 클래스는 반드시 정의한 뒤에 사용할 수 있다는 점입니다. 다음 코드는 {{jsxref("ReferenceError")}}를 던질 것입니다.</p>
-<pre class="brush: js example-bad notranslate">const p = new Rectangle(); // ReferenceError
+<pre class="brush: js example-bad ">const p = new Rectangle(); // ReferenceError
class Rectangle {}
</pre>
@@ -37,7 +37,7 @@ class Rectangle {}
<p><strong>Class 표현식</strong>은 class를 정의하는 또 다른 방법입니다. Class 표현식은 이름을 가질 수도 있고, 갖지 않을 수도 있습니다. 이름을 가진 class 표현식의 이름은 클래스 body의 local scope에 한해 유효합니다. (하지만, 클래스의 (인스턴스 이름이 아닌) {{jsxref("Function.name", "name")}} 속성을 통해 찾을 수 있습니다).</p>
-<pre class="brush: js notranslate">// unnamed
+<pre class="brush: js ">// unnamed
let Rectangle = class {
constructor(height, width) {
this.height = height;
@@ -80,7 +80,7 @@ console.log(Rectangle.name);
<p>{{jsxref("Functions/Method_definitions", "메서드 정의", "", "true")}}도 참조해보세요.</p>
-<pre class="brush: js notranslate">class Rectangle {
+<pre class="brush: js ">class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
@@ -103,7 +103,7 @@ console.log(square.area); // 100</pre>
<p>{{jsxref("Classes/static", "static", "", "true")}} 키워드는 클래스를 위한 정적(static) 메서드를 정의합니다. 정적 메서드는 클래스의 인스턴스화(<a href="https://developer.mozilla.org/ko/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript#The_object_(class_instance)" title='An example of class instance is "var john = new Person();"'>instantiating</a>) 없이 호출되며, 클래스의 인스턴스에서는 호출할 수 없습니다. 정적 메서드는 어플리케이션(application)을 위한 유틸리티(utility) 함수를 생성하는 데 주로 사용됩니다. 반면, 정적 속성은 캐시, 고정 환경설정 또는 인스턴스 간에 복제할 필요가 없는 기타 데이터에 유용합니다.</p>
-<pre class="brush: js notranslate">class Point {
+<pre class="brush: js ">class Point {
constructor(x, y) {
this.x = x;
this.y = y;
@@ -132,7 +132,7 @@ console.log(Point.distance(p1, p2)); // 7.0710678118654755</pre>
<p>메서드를 변수에 할당 한 다음 호출하는 것과 같이, 정적 메서드나 프로토타입 메서드가 {{jsxref("Operators/this", "this")}} 값 없이 호출될 때, <code>this</code> 값은 메서드 안에서 <code>undefined</code>가 됩니다. 이 동작은 {{jsxref("Strict_mode", "\"use strict\"")}} 명령어 없이도 같은 방식으로 동작하는데, <code>class</code> 문법 안에 있는 코드는 항상 strict mode 로 실행되기 때문입니다.</p>
-<pre class="brush: js notranslate">class Animal {
+<pre class="brush: js ">class Animal {
speak() {
return this;
}
@@ -152,7 +152,7 @@ eat(); // undefined</pre>
<p>위에 작성된 코드를 전통적 방식의 함수기반의 non–strict mode 구문으로 재작성하면, <code>this</code> 메서드 호출은 기본적으로 {{Glossary("Global_object", "전역 객체")}}인 초기 <code>this</code> 값에 자동으로 바인딩 됩니다. Strict mode에서는 자동 바인딩이 발생하지 않습니다; <code>this</code> 값은 전달된 대로 유지됩니다.</p>
-<pre class="brush: js notranslate">function Animal() { }
+<pre class="brush: js ">function Animal() { }
Animal.prototype.speak = function() {
return this;
@@ -173,7 +173,7 @@ eat(); // global object (in non-strict mode)</pre>
<p>인스턴스 속성은 반드시 클래스 메서드 내에 정의되어야 합니다:</p>
-<pre class="brush: js notranslate">class Rectangle {
+<pre class="brush: js ">class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
@@ -182,7 +182,7 @@ eat(); // global object (in non-strict mode)</pre>
<p>정적 (클래스사이드) 속성과 프로토타입 데이터 속성은 반드시 클래스 선언부 바깥쪽에서 정의되어야 합니다. </p>
-<pre class="brush: js notranslate">Rectangle.staticWidth = 20;
+<pre class="brush: js ">Rectangle.staticWidth = 20;
Rectangle.prototype.prototypeWidth = 25;
</pre>
@@ -196,7 +196,7 @@ Rectangle.prototype.prototypeWidth = 25;
<p>자바스크립트의 필드 선언 문법을 사용해서 위의 예제는 아래와 같이 다시 쓰여질 수 있습니다.</p>
-<pre class="brush: js notranslate">class Rectangle {
+<pre class="brush: js ">class Rectangle {
height = 0;
width;
constructor(height, width) {
@@ -215,7 +215,7 @@ Rectangle.prototype.prototypeWidth = 25;
<p>private 필드를 사용하면 아래와 같이 예제를 개선할 수 있습니다.</p>
-<pre class="brush: js notranslate">class Rectangle {
+<pre class="brush: js ">class Rectangle {
#height = 0;
#width;
constructor(height, width) {
@@ -238,7 +238,7 @@ Rectangle.prototype.prototypeWidth = 25;
<p>{{jsxref("Classes/extends", "extends")}} 키워드는 <em>클래스 선언</em>이나 <em>클래스 표현식</em>에서 다른 클래스의 자식 클래스를 생성하기 위해 사용됩니다.</p>
-<pre class="brush: js notranslate">class Animal {
+<pre class="brush: js ">class Animal {
constructor(name) {
this.name = name;
}
@@ -265,7 +265,7 @@ d.speak(); // Mitzie barks.</pre>
<p>또한 es5에서 사용되던 전통적인 함수 기반의 클래스를 통하여 확장할 수도 있습니다.</p>
-<pre class="brush: js notranslate">function Animal (name) {
+<pre class="brush: js ">function Animal (name) {
this.name = name;
}
@@ -286,7 +286,7 @@ d.speak(); // Mitzie barks.
<p>클래스는 생성자가 없는 객체(non-constructible)을 확장할 수 없습니다. 만약 기존의 생성자가 없는 객체을 확장하고 싶다면, 이 메서드를 사용하세요. {{jsxref("Object.setPrototypeOf()")}}:</p>
-<pre class="brush: js notranslate">const Animal = {
+<pre class="brush: js ">const Animal = {
speak() {
console.log(`${this.name} makes a noise.`);
}
@@ -310,7 +310,7 @@ d.speak(); // Mitzie makes a noise.</pre>
<p>예를 들어, {{jsxref("Array.map", "map()")}}과 같은 기본 생성자를 반환하는 메서드를 사용할 때 이 메서드가 MyArray 객체 대신 <code>Array</code> 객체가 반환하도록 하고 싶을 것입니다. {{jsxref("Symbol.species")}} 심볼은 이러한 것을 가능하게 해줍니다:</p>
-<pre class="brush: js notranslate">class MyArray extends Array {
+<pre class="brush: js ">class MyArray extends Array {
// 부모 Array 생성자로 species 덮어쓰기
static get [Symbol.species]() { return Array; }
}
@@ -324,7 +324,7 @@ console.log(mapped instanceof Array); // true</pre>
<p>{{jsxref("Operators/super", "super")}} 키워드는 객체의 부모가 가지고 있는 메서드를 호출하기 위해 사용됩니다. 이는 프로토타입 기반 상속보다 좋은 점 중 하나입니다.</p>
-<pre class="brush: js notranslate">class Cat {
+<pre class="brush: js ">class Cat {
constructor(name) {
this.name = name;
}
@@ -352,7 +352,7 @@ l.speak();
<p>슈퍼클래스를 인자로 받고 이 슈퍼클래스를 확장하는 서브클래스를 생성하여 반환하는 함수를 사용하여 ECMAScript에서 믹스-인을 구현할 수 있습니다:</p>
-<pre class="brush: js notranslate">var calculatorMixin = Base =&gt; class extends Base {
+<pre class="brush: js ">var calculatorMixin = Base =&gt; class extends Base {
calc() { }
};
@@ -362,7 +362,7 @@ var randomizerMixin = Base =&gt; class extends Base {
<p>위 믹스-인을 사용하는 클래스는 다음과 같이 작성할 수 있습니다:</p>
-<pre class="brush: js notranslate">class Foo { }
+<pre class="brush: js ">class Foo { }
class Bar extends calculatorMixin(randomizerMixin(Foo)) { }</pre>
<h2 id="클래스_재정의">클래스 재정의</h2>
diff --git a/files/ko/web/javascript/reference/classes/private_class_fields/index.html b/files/ko/web/javascript/reference/classes/private_class_fields/index.html
index ea5508ab27..0e31821cb3 100644
--- a/files/ko/web/javascript/reference/classes/private_class_fields/index.html
+++ b/files/ko/web/javascript/reference/classes/private_class_fields/index.html
@@ -13,7 +13,7 @@ translation_of: Web/JavaScript/Reference/Classes/Private_class_fields
<h2 id="Syntax">Syntax</h2>
-<pre class="notranslate">class ClassWithPrivateField {
+<pre >class ClassWithPrivateField {
#privateField
}
@@ -35,7 +35,7 @@ class ClassWithPrivateStaticField {
<p>static 메소드에서만 static 변수들을 호출할 수 있다는 제약은 그대로 유지된다.</p>
-<pre class="notranslate">class ClassWithPrivateStaticField {
+<pre >class ClassWithPrivateStaticField {
static #PRIVATE_STATIC_FIELD
static publicStaticMethod() {
@@ -52,7 +52,7 @@ console.assert(ClassWithPrivateStaticField.publicStaticMethod() === 42)</pre>
<p>이는 <code>this</code> 를 사용함에 있어 예상치 못한 동작을 야기할 수 있다.</p>
-<pre class="notranslate">class BaseClassWithPrivateStaticField {
+<pre >class BaseClassWithPrivateStaticField {
static #PRIVATE_STATIC_FIELD
static basePublicStaticMethod() {
@@ -77,7 +77,7 @@ console.assert(error instanceof TypeError)</pre>
<p>캡슐화(encapsulation) 는 언어로부터 강제된다(enforced by the language). 즉, scope 밖에서 <code>#</code> 이름에 접근하는 것은 syntax error 이다.</p>
-<pre class="notranslate">class ClassWithPrivateField {
+<pre >class ClassWithPrivateField {
#privateField
constructor() {
@@ -97,7 +97,7 @@ instance.#privateField === 42 // Syntax error</pre>
<p>private static 메소드는 generator, async 그리고 async generator 함수가 될 수 있다.</p>
-<pre class="notranslate">class ClassWithPrivateStaticMethod {
+<pre >class ClassWithPrivateStaticMethod {
static #privateStaticMethod() {
return 42
}
@@ -116,7 +116,7 @@ console.assert(ClassWithPrivateStaticMethod.publicStaticMethod2() === 42);</pre>
<p>이는 <code>this</code> 를 사용할 때 예상치 못한 동작을 발생시킬 수 있다. (이는 <code>this</code> binding rule 이 적용되기 때문이다.) 다음 예시에서 <code>Derived.publicStaticMethod2()</code> 를 호출할 때, <code>this</code> 는 class <code>Derived</code> (<code>Base</code> 가 아니라) 를 가리킨다. </p>
-<pre class="notranslate">class Base {
+<pre >class Base {
static #privateStaticMethod() {
return 42;
}
@@ -137,7 +137,7 @@ console.log(Derived.publicStaticMethod2()); // TypeError</pre>
<p>private 인스턴스 메소드는 private 인스턴스 필드와는 다르게 class 인스턴스로부터 접근 가능하다.</p>
-<pre class="notranslate">class ClassWithPrivateMethod {
+<pre >class ClassWithPrivateMethod {
#privateMethod() {
return 'hello world'
}
@@ -153,7 +153,7 @@ console.log(instance.getPrivateMessage())
<p>private 인스턴스 메소드는 generator, async 그리고 async generator 함수가 될 수 있다. private getter 와 setter 또한 가능하다:</p>
-<pre class="notranslate">class ClassWithPrivateAccessor {
+<pre >class ClassWithPrivateAccessor {
#message
get #decoratedMessage() {
diff --git a/files/ko/web/javascript/reference/functions/arrow_functions/index.html b/files/ko/web/javascript/reference/functions/arrow_functions/index.html
index cff8d043ae..2a12888f65 100644
--- a/files/ko/web/javascript/reference/functions/arrow_functions/index.html
+++ b/files/ko/web/javascript/reference/functions/arrow_functions/index.html
@@ -27,7 +27,7 @@ original_slug: Web/JavaScript/Reference/Functions/애로우_펑션
<h3 id="기본_구문">기본 구문</h3>
-<pre class="syntaxbox notranslate"><strong>(</strong><em>param1</em>, <em>param2</em>, …, <em>paramN</em><strong>) =&gt; {</strong> <em>statements</em> <strong>}</strong>
+<pre class="syntaxbox "><strong>(</strong><em>param1</em>, <em>param2</em>, …, <em>paramN</em><strong>) =&gt; {</strong> <em>statements</em> <strong>}</strong>
<strong>(</strong><em>param1</em>, <em>param2</em>, …, <em>paramN</em><strong>) =&gt;</strong> <em>expression</em>
// 다음과 동일함: =&gt; { return expression; }
@@ -40,7 +40,7 @@ original_slug: Web/JavaScript/Reference/Functions/애로우_펑션
<h3 id="고급_구문">고급 구문</h3>
-<pre class="syntaxbox notranslate">// 객체 리터럴 표현을 반환하기 위해서는 함수 본문(body)을 괄호 속에 넣음:
+<pre class="syntaxbox ">// 객체 리터럴 표현을 반환하기 위해서는 함수 본문(body)을 괄호 속에 넣음:
<em>params</em> =&gt; ({<em>foo: bar</em>})
// <a href="/ko/docs/Web/JavaScript/Reference/Functions/rest_parameters">나머지 매개변수</a> 및 <a href="/ko/docs/Web/JavaScript/Reference/Functions/Default_parameters">기본 매개변수</a>를 지원함
@@ -64,7 +64,7 @@ f(); // 6
<p>일부 함수 패턴에서는, 짧은 함수가 환영받습니다. 비교해 보세요:</p>
-<pre class="notranslate">var elements = [
+<pre >var elements = [
'Hydrogen',
'Helium',
'Lithium',
@@ -114,7 +114,7 @@ elements.<a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map"
<p>이는 객체 지향 스타일로 프로그래밍할 때 별로 좋지않습니다.</p>
-<pre class="brush: js notranslate">function Person() {
+<pre class="brush: js ">function Person() {
// Person() 생성자는 `this`를 자신의 인스턴스로 정의.
this.age = 0;
@@ -130,7 +130,7 @@ var p = new Person();</pre>
<p>ECMAScript 3/5 에서는, 이 문제를 <code>this</code> 값을 폐쇄될 수 있는 (비전역) 변수에 할당하여 해결했습니다.</p>
-<pre class="brush: js notranslate">function Person() {
+<pre class="brush: js ">function Person() {
var that = this;
that.age = 0;
@@ -146,7 +146,7 @@ var p = new Person();</pre>
<p>따라서 다음 코드에서 <code>setInterval</code>에 전달 된 함수 내부의 <code>this</code>는 <code>setInterval</code>을 포함한 function의 <code>this</code>와 동일한 값을 갖습니다.</p>
-<pre class="brush: js notranslate">function Person(){
+<pre class="brush: js ">function Person(){
this.age = 0;
setInterval(() =&gt; {
@@ -160,7 +160,7 @@ var p = new Person();</pre>
<p><code>this</code>가 렉시컬(lexical, 정적)임을 감안하면, <code>this</code>에 관한 <a href="/ko/docs/Web/JavaScript/Reference/Strict_mode">엄격 모드</a> 규칙은 그냥 무시됩니다.</p>
-<pre class="notranslate">var f = () =&gt; { 'use strict'; return this; };
+<pre >var f = () =&gt; { 'use strict'; return this; };
f() === window; // 혹은 전역객체</pre>
<p>엄격 모드의 나머지 규칙은 평소대로 적용합니다.</p>
@@ -173,7 +173,7 @@ f() === window; // 혹은 전역객체</pre>
<p>This code sample using Chrome 81 demonstrates that arrow functions allow the creation of global variables in such situations (both for a concise body and for a normal function body):</p>
-<pre class="notranslate">&gt; f1 = x =&gt; { y = x; console.log(`x: ${x}, y: ${y}`); return x + 1; }
+<pre >&gt; f1 = x =&gt; { y = x; console.log(`x: ${x}, y: ${y}`); return x + 1; }
x =&gt; { y = x; console.log(`x: ${x}, y: ${y}`); return x + 1; }
&gt; y
@@ -230,7 +230,7 @@ VM51891:1 Uncaught ReferenceError: z1 is not defined
<p>화살표 함수에서는 <code>this가 </code> 바인딩되지 않았기 때문에, <code>call()</code> 또는 <code>apply()</code> 메서드는  인자만 전달 할 수 있습니다. this는 무시됩니다.</p>
-<pre class="brush: js notranslate">var adder = {
+<pre class="brush: js ">var adder = {
base : 1,
add : function(a) {
@@ -255,7 +255,7 @@ console.log(adder.addThruCall(1)); // 이도 2가 콘솔에 출력될 것임</pr
<p>화살표 함수는 <a href="/ko/docs/Web/JavaScript/Reference/Functions/arguments"><code>arguments</code> 객체</a>를 바인드 하지 않습니다.  때문에, <code>arguments는</code>  그저 둘러싸는 범위(scope) 내 이름에 대한 참조입니다.</p>
-<pre class="brush: js notranslate"><code>var arguments = [1, 2, 3];
+<pre class="brush: js "><code>var arguments = [1, 2, 3];
var arr = () =&gt; arguments[0];
arr(); // 1
@@ -269,7 +269,7 @@ foo(1); // 2</code></pre>
<p>화살표 함수는 자신의 <code>arguments</code> 객체가 없지만, 대부분의 경우에 <a href="/ko/docs/Web/JavaScript/Reference/Functions/rest_parameters">나머지 매개변수</a>가 좋은 대안입니다:</p>
-<pre class="brush: js notranslate">function foo(n) {
+<pre class="brush: js ">function foo(n) {
var f = (...args) =&gt; args[0] + n;
return f(2);
}
@@ -280,7 +280,7 @@ foo(1); // 3</pre>
<p>이야기 했듯이, 화살표 함수 표현은 메소드 함수가 아닌 형태로 사용 할 수 있습니다. 메소드로 사용하려고 한면 무슨일이 발생하는지 봅시다.</p>
-<pre class="brush: js notranslate"><code>'use strict';
+<pre class="brush: js "><code>'use strict';
var obj = { // does not create a new scope
i: 10,
@@ -295,7 +295,7 @@ obj.c(); // prints 10, Object {...}</code>
<p>화살표 함수는 자신의 this를 가지고("bind" 바인드)있지 않습니다.{{jsxref("Object.defineProperty()")}}</p>
-<pre class="brush: js notranslate"><code>'use strict';
+<pre class="brush: js "><code>'use strict';
var obj = {
a: 10
@@ -312,14 +312,14 @@ Object.defineProperty(obj, 'b', {
<p>화살표 함수는 생성자로서 사용될 수 없으며 <code>new</code>와 함께 사용하면 오류가 발생합니다.</p>
-<pre class="brush: js notranslate"><code>var Foo = () =&gt; {};
+<pre class="brush: js "><code>var Foo = () =&gt; {};
var foo = new Foo(); // TypeError: Foo is not a constructor</code></pre>
<h3 id="prototype_속성_사용"><code>prototype</code> 속성 사용</h3>
<p>화살표 함수는 <code>prototype</code> 속성이 없습니다.</p>
-<pre class="brush: js notranslate"><code>var Foo = () =&gt; {};
+<pre class="brush: js "><code>var Foo = () =&gt; {};
console.log(Foo.prototype); // undefined</code></pre>
<h3 id="yield_키워드_사용"><code>yield</code> 키워드 사용</h3>
@@ -336,7 +336,7 @@ console.log(Foo.prototype); // undefined</code></pre>
<p>block바디는 자동으로 값을 반환하지 않습니다. <code>return</code>을 사용해서 값을 반환해야 합니다.</p>
-<pre class="brush: js notranslate">var func = x =&gt; x * x; // concise 바디, 생략된 "return" 여기서는 x * x
+<pre class="brush: js ">var func = x =&gt; x * x; // concise 바디, 생략된 "return" 여기서는 x * x
var func = (x, y) =&gt; { return x + y; }; // block 바디, "return"이 필요
</pre>
@@ -344,7 +344,7 @@ var func = (x, y) =&gt; { return x + y; }; // block 바디, "return"이 필요
<p>간결한 구문 <code>params =&gt; {object:literal}</code>을 사용한 객체 리터럴 반환은 예상대로 작동하지 않음을 명심하세요:</p>
-<pre class="brush: js notranslate">var func = () =&gt; {  foo: 1  };
+<pre class="brush: js ">var func = () =&gt; {  foo: 1  };
// func() 호출은 undefined를 반환!
var func = () =&gt; {  foo: function() {}  };
@@ -354,19 +354,19 @@ var func = () =&gt; {  foo: function() {}  };
<p>객체 리터럴를 괄호로 감싸는 것을 기억하세요:</p>
-<pre class="brush: js notranslate">var func = () =&gt; ({ foo: 1 });</pre>
+<pre class="brush: js ">var func = () =&gt; ({ foo: 1 });</pre>
<h3 id="줄바꿈">줄바꿈</h3>
<p>화살표 함수는 파라메터와 화살표 사이에 개행 문자를 포함 할 수 없습니다.</p>
-<pre class="brush: js notranslate"><code>var func = (a, b, c)
+<pre class="brush: js "><code>var func = (a, b, c)
=&gt; 1;
// SyntaxError: expected expression, got '=&gt;'</code></pre>
<p>하지만, 보기 좋은 코드를 유지하고 싶다면, 아래에 보는 것처럼 괄호나 개행을 둠으로써 이를 수정할 수 있습니다.</p>
-<pre class="notranslate">var func = (a, b, c) =&gt;
+<pre >var func = (a, b, c) =&gt;
  1;
var func = (a, b, c) =&gt; (
@@ -389,7 +389,7 @@ var func = (a, b, c) =&gt; {
<p>화살표 함수 내의 화살표는 연산자가 아닙니다. 그러나 화살표 함수는 평범한 함수와 비교했을 때 <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence">operator precedence</a>와 다르게 반응하는 특별한 파싱룰을 가지고 있습니다.</p>
-<pre class="brush: js notranslate"><code>let callback;
+<pre class="brush: js "><code>let callback;
callback = callback || function() {}; // ok
@@ -403,7 +403,7 @@ callback = callback || (() =&gt; {}); // ok</code>
<h3 id="기본_사용법">기본 사용법</h3>
-<pre class="brush: js notranslate"><code>// </code> empty 화살표 함수는 undefined를 반환 <code>
+<pre class="brush: js "><code>// </code> empty 화살표 함수는 undefined를 반환 <code>
let empty = () =&gt; {};
(() =&gt; 'foobar')();
diff --git a/files/ko/web/javascript/reference/functions/default_parameters/index.html b/files/ko/web/javascript/reference/functions/default_parameters/index.html
index 15828a0c51..d047ebaaa4 100644
--- a/files/ko/web/javascript/reference/functions/default_parameters/index.html
+++ b/files/ko/web/javascript/reference/functions/default_parameters/index.html
@@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Functions/Default_parameters
<h2 id="구문">구문</h2>
-<pre class="brush: js notranslate">
+<pre class="brush: js ">
function fnName(param1 = defaultValue1, ..., paramN = defaultValueN) { ... }
</pre>
@@ -29,7 +29,7 @@ function fnName(param1 = defaultValue1, ..., paramN = defaultValueN) { ... }
<p>다음 예제에서, <code>multiply</code>호출시 <code>b</code>에 할당된  값이 없다면, <code>b</code> 값은 <code>a*b</code>를 평가할 때 <code>undefined</code>일 거고 <code>multiply</code> 호출은 <code>NaN</code>이 반환됩니다. </p>
-<pre class="brush: js notranslate">function multiply(a, b) {
+<pre class="brush: js ">function multiply(a, b) {
return a * b
}
@@ -39,7 +39,7 @@ multiply(5) // NaN !
<p>이를 방지하기 위해서, 아래 두번째 줄과 같이  <code>multiply</code> 함수가 오직 한 개의 인수만 있다면  <code>b</code>를  <code>1</code>로 설정하는 방식을 사용하곤 했습니다.</p>
-<pre class="brush: js notranslate">function multiply(a, b) {
+<pre class="brush: js ">function multiply(a, b) {
b = (typeof b !== 'undefined') ? b : 1
return a*b
}
@@ -50,7 +50,7 @@ multiply(5) // 5
<p>ES2015의 기본값 매개변수로 함수 내부 에서의 검사는 더 이상 필요치 않습니다. 이제, 간단히 함수 머리(head)에서 <code>b</code>의 기본값으로 <code>1</code> 로 설정할 수 있습니다:</p>
-<pre class="brush: js notranslate">function multiply(a, b = 1) {
+<pre class="brush: js ">function multiply(a, b = 1) {
return a*b
}
@@ -65,7 +65,7 @@ multiply(5, undefined) // 5
<p>아래 예제중 두 번째 호출에서, 설사 두 번째 인수를 호출할 때 명시해서 <code>undefined</code> (<code>null</code> 혹은 {{glossary("falsy")}} 값이 아니긴 하지만 )로 설정하더라도 , <code>num</code> 인수의 값은 여전히 기본값입니다.</p>
-<pre class="brush: js notranslate">function test(num = 1) {
+<pre class="brush: js ">function test(num = 1) {
  console.log(typeof num)
}
@@ -81,7 +81,7 @@ test(null) // 'object' (num 은 null로 설정됨)
<p>기본 인수는 <em>호출</em> <em>시 </em>에 평가됩니다, 그래서 Python의 경우 와는 달리, 함수가 호출될 때마다 새로운 객체가 생성됩니다.</p>
-<pre class="brush: js notranslate">function append(value, array = []) {
+<pre class="brush: js ">function append(value, array = []) {
array.push(value)
return array
}
@@ -93,7 +93,7 @@ append(2) // [2], [1, 2]가 아니라
<p>이는 심지어 함수 및 변수에도 적용됩니다:</p>
-<pre class="brush: js notranslate">function callSomething(thing = something()) {
+<pre class="brush: js ">function callSomething(thing = something()) {
  return thing
}
@@ -111,7 +111,7 @@ callSomething() // 2
<p>매개 변수가 여러개일 때 앞쪽에( 왼쪽 부분) 정의된 매개변수는 뒷쪽에 정의된 매개변수의 기본값에  바로 사용할 수 있습니다.</p>
-<pre class="brush: js notranslate">function greet(name, greeting, message = greeting + ' ' + name) {
+<pre class="brush: js ">function greet(name, greeting, message = greeting + ' ' + name) {
  return [name, greeting, message]
}
@@ -121,7 +121,7 @@ greet('David', 'Hi', 'Happy Birthday!') // ["David", "Hi", "Happy Birthday!"]
<p>이 기능은,  얼마나 많은 경계 조건(edge case)를 다룰수 있는지 보여주는, 아래 예제로 거의 설명 가능합니다.</p>
-<pre class="brush: js notranslate">function go() {
+<pre class="brush: js ">function go() {
return ':P'
}
@@ -172,13 +172,13 @@ withoutDefaults.call({value:"=^_^="});
<p>아래 함수는 호출되면 <code>ReferenceError</code> 를 발생시킵니다. 매개변수 기본값이 함수 내부의 자식 유효범위를 참조할 수 없기 때문입니다.</p>
-<pre class="brush: js example-bad notranslate">function f(a = go()) { // `f`가 호출 되면 `ReferenceError` 발생
+<pre class="brush: js example-bad ">function f(a = go()) { // `f`가 호출 되면 `ReferenceError` 발생
function go() { return ':P' }
}</pre>
<p>...그리고 아래 함수는 <code>undefined</code> 를 프린트 하는데,  <code>var a</code> 가 함수 내부 대상의 유효범위내에서만 효과를 가지기 때문입니다. ( 매개변수 목록이 대상인 부모 스코프가 아니라)</p>
-<pre class="brush: js example-bad notranslate">function f(a, b = () =&gt; console.log(a)) {
+<pre class="brush: js example-bad ">function f(a, b = () =&gt; console.log(a)) {
var a = 1
b() // `undefined`를 인쇄하는데, 매개변수 기본값이 자체 스코프에 있기 때문입니다
} </pre>
@@ -187,7 +187,7 @@ withoutDefaults.call({value:"=^_^="});
<p>매개변수는 여전히 왼쪽에서 오른쪽으로 설정됩니다. 아래 예제에서 뒷쪽에 기본값이 없는 매개변수가 있지만 기본값 매개변수를 덮어씁니다.</p>
-<pre class="brush: js notranslate">function f(x=1, y) {
+<pre class="brush: js ">function f(x=1, y) {
return [x, y];
}
@@ -199,7 +199,7 @@ f(2) // [2, undefined]
<p>기본값 할당을 {{jsxref("Operators/Destructuring_assignment", "destructuring assignment", "", 1)}} 표기와 함께 사용할 수 있습니다:</p>
-<pre class="brush: js notranslate">function f([x, y] = [1, 2], {z: z} = {z: 3}) {
+<pre class="brush: js ">function f([x, y] = [1, 2], {z: z} = {z: 3}) {
return x + y + z
}
diff --git a/files/ko/web/javascript/reference/global_objects/eval/index.html b/files/ko/web/javascript/reference/global_objects/eval/index.html
index d599cadbe9..d7bcfeb182 100644
--- a/files/ko/web/javascript/reference/global_objects/eval/index.html
+++ b/files/ko/web/javascript/reference/global_objects/eval/index.html
@@ -72,7 +72,7 @@ eval(expression.toString());            // 4를 반환
<p><code>eval</code>을 사용하는 나쁜 코드:</p>
-<pre class="brush:js notranslate">function looseJsonParse(obj){
+<pre class="brush:js ">function looseJsonParse(obj){
return eval(obj);
}
console.log(looseJsonParse(
@@ -82,7 +82,7 @@ console.log(looseJsonParse(
<p><code>eval</code>이 없는 코드:</p>
-<pre class="brush:js notranslate">function looseJsonParse(obj){
+<pre class="brush:js ">function looseJsonParse(obj){
return Function('"use strict";return (' + obj + ')')();
}
console.log(looseJsonParse(
@@ -92,7 +92,7 @@ console.log(looseJsonParse(
<p>위의 두 코드는 얼핏 보면 같은 방식으로 실행되는 것처럼 보이지만, <code>eval</code>이 있는 코드가 훨씬 느립니다. 평가되는 객체의 <code>c: new Date()</code>를 주목하세요. <code>eval</code>이 없는 함수의 경우 이 객체는 전역 범위에서 평가되기 때문에 브라우저에서는 <code>Date</code>를 같은 이름의 지역 변수가 아니라 <code>window.Date</code>로 취급할 수 있습니다. 그러나 <code>eval()</code>을 사용하는 코드에서는 아래와 같은 경우도 존재할 수 있기 때문에 <code>Date</code>를 이렇게 취급할 수 없습니다.</p>
-<pre class="brush:js notranslate">function Date(n){
+<pre class="brush:js ">function Date(n){
return ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"][n%7 || 0];
}
function looseJsonParse(obj){
@@ -107,7 +107,7 @@ console.log(looseJsonParse(
<p>만약 위의 상황에서 실제로 새로 선언한 <code>Date</code> 함수를 <code>Function()</code>에서 실행해야 하는 상황을 생각해 봅시다. 이렇게 되면 <code>eval()</code>로 돌아가야 할까요? 물론 아닙니다. 아래의 접근을 시도해 보세요.</p>
-<pre class="brush:js notranslate">function Date(n){
+<pre class="brush:js ">function Date(n){
return ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"][n%7 || 0];
}
function runCodeWithDateFunction(obj){
@@ -132,7 +132,7 @@ console.log(runCodeWithDateFunction(
<p>마지막으로 코드 최소화의 측면에서 살펴보면, 위와 같이 <code>Function()</code>을 사용했을 때는 아래의 최소화된 코드와 같이 함수의 인자 이름 역시 짧게 줄일 수 있으므로 runCodeWithDateFunction에 전달하는 코드 문자열을 더욱 효율적으로 줄일 수 있습니다.</p>
-<pre class="brush:js notranslate">console.log(Function('"use strict";return(function(a){return a(5)})')()(function(a){
+<pre class="brush:js ">console.log(Function('"use strict";return(function(a){return a(5)})')()(function(a){
return"Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" ")[a%7||0]}));</pre>
<p>자주 쓰이는 용례에 대해서는 <code>eval()</code>이나 <code>Function()</code>보다 안전하고 빠른 대안도 존재합니다.</p>
@@ -141,7 +141,7 @@ return"Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" ")[a%7|
<p>속성명으로 속성을 찾는 데 <code>eval()</code>을 사용해서는 안 됩니다. 다음 예제와 같이 코드를 실행하기 전까지는 접근할 속성을 알 수 없는 상황을 생각해 봅시다. 이 상황은 <code>eval</code>로 처리할 수 있습니다.</p>
-<pre class="brush:js notranslate">var obj = { a: 20, b: 30 };
+<pre class="brush:js ">var obj = { a: 20, b: 30 };
var propname = getPropName(); // "a" 또는 "b"를 반환
eval( "var result = obj." + propname );
@@ -149,21 +149,21 @@ eval( "var result = obj." + propname );
<p>그러나 여기에서 <code>eval()</code>을 쓸 필요가 없고, 지양되어야 합니다. 그 대신 훨씬 빠르고 안전한 <a href="/ko/docs/Web/JavaScript/Reference/Operators/Property_Accessors">속성 접근자</a>를 사용하여야 합니다.</p>
-<pre class="brush:js notranslate">var obj = { a: 20, b: 30 };
+<pre class="brush:js ">var obj = { a: 20, b: 30 };
var propname = getPropName(); // "a" 또는 "b"를 반환
var result = obj[ propname ]; // obj[ "a" ]는 obj.a와 동일함
</pre>
<p>이 방법으로 더 깊은 속성에도 접근할 수 있습니다. <code>eval()</code>을 사용한다면 다음과 같을 것입니다.</p>
-<pre class="notranslate"><code>var obj = {a: {b: {c: 0}}};
+<pre ><code>var obj = {a: {b: {c: 0}}};
var propPath = getPropPath(); // "a.b.c"를 반환한다고 가정
eval( 'var result = obj.' + propPath );</code></pre>
<p>여기서 <code>eval()</code>의 사용을 피하려면 속성 경로를 <code><a href="/ko/docs/Web/JavaScript/Reference/Global_Objects/String/split">split</a></code>한 다음 순서대로 접근할 수도 있습니다.</p>
-<pre class="notranslate"><code>function getDescendantProp(obj, desc) {
+<pre ><code>function getDescendantProp(obj, desc) {
var arr = desc.split('.');
while (arr.length) {
obj = obj[arr.shift()];
@@ -177,7 +177,7 @@ var result = getDescendantProp(obj, propPath);</code></pre>
<p>속성에 값을 대입하는 것도 비슷하게 할 수 있습니다.</p>
-<pre class="notranslate"><code>function setDescendantProp(obj, desc, value) {
+<pre ><code>function setDescendantProp(obj, desc, value) {
var arr = desc.split('.');
while (arr.length &gt; 1) {
obj = obj[arr.shift()];
@@ -194,7 +194,7 @@ var result = setDescendantProp(obj, propPath, 1); // test.a.b.c의 값은 1로
<p>JavaScript의 <a href="http://en.wikipedia.org/wiki/First-class_function">함수는 1급 객체</a>이므로 다른 API에 함수를 인자로 전달할 수도 있고, 변수나 객체의 속성으로 대입할 수도 있습니다. 다수의 DOM API는 이 점을 염두에 두고 설계되므로, 다음과 같이 코드를 짜야 합니다.</p>
-<pre class="brush: js notranslate">// setTimeout(" ... ", 1000) 대신에
+<pre class="brush: js ">// setTimeout(" ... ", 1000) 대신에
setTimeout(function() { ... }, 1000);
// elt.setAttribute("onclick", "...") 대신에
@@ -222,7 +222,7 @@ elt.addEventListener("click", function() { ... } , false); </pre>
<p>아래 코드에서 <code>eval()</code>를 포함하는 문장은 모두 42를 반환합니다. 전자는 문자열 "<code>x + y + 1</code>"을, 후자는 문자열 "<code>42</code>"를 평가합니다.</p>
-<pre class="brush:js notranslate">var x = 2;
+<pre class="brush:js ">var x = 2;
var y = 39;
var z = "42";
eval("x + y + 1"); // 42를 반환
@@ -233,14 +233,14 @@ eval(z); // 42를 반환
<p>다음 예제에서는 <code>eval()</code>을 사용하여 <code>str</code> 문자열을 평가합니다. 이 문자열은 <code>x</code>가 5이면 로그를 출력한 다음 <code>z</code>에 42를 할당하고, 그렇지 않으면 <code>z</code>에 0 을 할당하는 JavaScript 코드입니다. 두 번째 문장이 실행되면, <code>eval()</code>은 이 문장의 집합을 수행하고, <code>z</code>에 할당된 값을 반환합니다.</p>
-<pre class="brush:js notranslate">var x = 5;
+<pre class="brush:js ">var x = 5;
var str = "if (x == 5) {console.log('z is 42'); z = 42;} else z = 0; ";
console.log("z is ", eval(str));</pre>
<p>여러 값을 정의할 경우 마지막 값을 반환합니다.</p>
-<pre class="notranslate"><code>var x = 5;
+<pre ><code>var x = 5;
var str = "if (x == 5) {console.log('z is 42'); z = 42; x = 420; } else z = 0;";
console.log('x is ', eval(str)); // z는 42, x는 420</code></pre>
@@ -249,7 +249,7 @@ console.log('x is ', eval(str)); // z는 42, x는 420</code></pre>
<p><code>eval()</code> 은 마지막 표현식의 평가값을 반환합니다.</p>
-<pre class="brush:js notranslate">var str = "if ( a ) { 1+1; } else { 1+2; }";
+<pre class="brush:js ">var str = "if ( a ) { 1+1; } else { 1+2; }";
var a = true;
var b = eval(str); // 2를 반환
@@ -262,7 +262,7 @@ console.log("b is : " + b);</pre>
<h3 id="함수_정의_문자열로서의_eval_은_앞뒤를_와_로_감싸야_한다">함수 정의 문자열로서의 <code>eval</code> 은 앞뒤를 "("와 ")"로 감싸야 한다</h3>
-<pre class="brush:js notranslate">var fctStr1 = "function a() {}"
+<pre class="brush:js ">var fctStr1 = "function a() {}"
var fctStr2 = "(function a() {})"
var fct1 = eval(fctStr1) // undefined를 반환
var fct2 = eval(fctStr2) // 함수를 반환
diff --git a/files/ko/web/javascript/reference/global_objects/globalthis/index.html b/files/ko/web/javascript/reference/global_objects/globalthis/index.html
index a06d8520dc..8a46c92c54 100644
--- a/files/ko/web/javascript/reference/global_objects/globalthis/index.html
+++ b/files/ko/web/javascript/reference/global_objects/globalthis/index.html
@@ -37,7 +37,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/globalThis
<p><code>globalThis</code> 없이 현재 환경의 전역 객체를 가져오는 방법 중 유일하게 믿을만한 방법은 <code>Function('return this')()</code> 입니다. 그러나 일부 환경에서는 <a href="/ko/docs/Web/HTTP/CSP">CSP</a> 위반에 걸리는 코드이므로, <a href="https://github.com/paulmillr/es6-shim">es6-shim</a>은 대신 다음 검사를 수행합니다.</p>
-<pre class="brush: js notranslate">var getGlobal = function () {
+<pre class="brush: js ">var getGlobal = function () {
if (typeof self !== 'undefined') { return self; }
if (typeof window !== 'undefined') { return window; }
if (typeof global !== 'undefined') { return global; }
@@ -53,7 +53,7 @@ if (typeof globals.setTimeout !== 'function') {
<p><code>globalThis</code>를 사용할 수 있으면 환경별 전역 객체 검사는 더 이상 필요하지 않습니다.</p>
-<pre class="brush: js notranslate">if (typeof globalThis.setTimeout !== 'function') {
+<pre class="brush: js ">if (typeof globalThis.setTimeout !== 'function') {
// no setTimeout in this environment!
}</pre>
diff --git a/files/ko/web/javascript/reference/global_objects/infinity/index.html b/files/ko/web/javascript/reference/global_objects/infinity/index.html
index ffda333c14..8c5a8c6e77 100644
--- a/files/ko/web/javascript/reference/global_objects/infinity/index.html
+++ b/files/ko/web/javascript/reference/global_objects/infinity/index.html
@@ -27,7 +27,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Infinity
<h2 id="예제">예제</h2>
-<pre class="brush: js notranslate">console.log(Infinity); /* Infinity */
+<pre class="brush: js ">console.log(Infinity); /* Infinity */
console.log(Infinity + 1); /* Infinity */
console.log(Math.pow(10,1000)); /* Infinity */
console.log(Math.log(0)); /* -Infinity */
diff --git a/files/ko/web/javascript/reference/global_objects/nan/index.html b/files/ko/web/javascript/reference/global_objects/nan/index.html
index e2e4aa9bac..0ddec1ad2d 100644
--- a/files/ko/web/javascript/reference/global_objects/nan/index.html
+++ b/files/ko/web/javascript/reference/global_objects/nan/index.html
@@ -39,7 +39,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/NaN
<p><code>NaN</code>은 다른 모든 값과 비교(<code>==</code>, <code>!=</code>, <code>===</code>, <code>!==</code>)했을 때 같지 않으며, 다른 NaN과도 같지 않습니다. NaN의 판별은 {{jsxref("Number.isNaN()")}} 또는 {{jsxref("Global_Objects/isNaN", "isNaN()")}}을 사용하면 제일 분명하게 수행할 수 있습니다. 아니면, 오로지 NaN만이 자기자신과 비교했을 때 같지 않음을 이용할 수도 있습니다.</p>
-<pre class="brush: js notranslate">NaN === NaN; // false
+<pre class="brush: js ">NaN === NaN; // false
Number.NaN === NaN; // false
isNaN(NaN); // true
isNaN(Number.NaN); // true
@@ -52,13 +52,13 @@ valueIsNaN(Number.NaN); // true
<p>그러나 <code>isNaN()</code>과 <code>Number.isNaN()</code>의 차이를 주의해야 합니다. <code>isNaN</code>은 현재 값이 <code>NaN</code>이거나, 숫자로 변환했을 때 <code>NaN</code>이 되면 참을 반환하지만, <code>Number.isNaN</code>은 현재 값이 <code>NaN</code>이어야만 참을 반환합니다.</p>
-<pre class="brush: js notranslate">isNaN('hello world'); // true
+<pre class="brush: js ">isNaN('hello world'); // true
Number.isNaN('hello world'); // false
</pre>
<p>덧붙여서, 일부 배열 메서드는 NaN을 찾을 수 없습니다.</p>
-<pre class="brush: js notranslate">let arr = [2, 4, NaN, 12];
+<pre class="brush: js ">let arr = [2, 4, NaN, 12];
arr.indexOf(NaN); // -1 (false)
arr.includes(NaN); // true
arr.findIndex(n =&gt; Number.isNaN(n)); // 2</pre>
diff --git a/files/ko/web/javascript/reference/global_objects/number/negative_infinity/index.html b/files/ko/web/javascript/reference/global_objects/number/negative_infinity/index.html
index d6567e687e..43ae38f357 100644
--- a/files/ko/web/javascript/reference/global_objects/number/negative_infinity/index.html
+++ b/files/ko/web/javascript/reference/global_objects/number/negative_infinity/index.html
@@ -46,7 +46,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY
<p>다음 코드에서 <code>smallNumber</code>는 JavaScript의 최솟값보다 작은 값을 할당받습니다. {{jsxref("Statements/if...else", "if")}} 문이 실행되면, <code>smallNumber</code>의 값이 <code>-Infinity</code>이므로 <code>smallNumber</code>는 계산에 좀 더 적합한 값을 다시 할당합니다.</p>
-<pre class="brush: js notranslate">var smallNumber = (-Number.MAX_VALUE) * 2;
+<pre class="brush: js ">var smallNumber = (-Number.MAX_VALUE) * 2;
if (smallNumber === Number.NEGATIVE_INFINITY) {
smallNumber = returnFinite();
diff --git a/files/ko/web/javascript/reference/global_objects/object/entries/index.html b/files/ko/web/javascript/reference/global_objects/object/entries/index.html
index 3056d99d31..082e931936 100644
--- a/files/ko/web/javascript/reference/global_objects/object/entries/index.html
+++ b/files/ko/web/javascript/reference/global_objects/object/entries/index.html
@@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/entries
<h2 id="Syntax">Syntax</h2>
-<pre class="syntaxbox notranslate">Object.entries(<var>obj</var>)</pre>
+<pre class="syntaxbox ">Object.entries(<var>obj</var>)</pre>
<h3 id="Parameters">Parameters</h3>
@@ -36,7 +36,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/entries
<p>기본적으로 지원하지 않는 이전 환경에서 호환 가능한 <code>Object.entries</code> 지원을 추가하려면 <a href="https://github.com/tc39/proposal-object-values-entries">tc39/proposal-object-values-entries</a>에 Object.entries의 데모 구현을 찾을 수 있습니다 (IE에 대한 지원이 필요하지 않은 경우) , <a href="https://github.com/es-shims/Object.entries">es-shims/Object.entries</a> 저장소에있는 polyfill을 사용하거나 아래에 나열된 polyfill을 간단하게 배치 할 수 있습니다.</p>
-<pre class="brush: js notranslate">if (!Object.entries)
+<pre class="brush: js ">if (!Object.entries)
  Object.entries = function( obj ){
var ownProps = Object.keys( obj ),
  i = ownProps.length,
@@ -54,7 +54,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/entries
<h2 id="Examples">Examples</h2>
-<pre class="brush: js notranslate">const obj = { foo: 'bar', baz: 42 };
+<pre class="brush: js ">const obj = { foo: 'bar', baz: 42 };
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]
// array like object
@@ -94,7 +94,7 @@ console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
-<pre class="brush: js notranslate">const obj = { foo: 'bar', baz: 42 };
+<pre class="brush: js ">const obj = { foo: 'bar', baz: 42 };
const map = new Map(Object.entries(obj));
console.log(map); // Map { foo: "bar", baz: 42 }
</pre>
@@ -103,7 +103,7 @@ console.log(map); // Map { foo: "bar", baz: 42 }
<p><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#Array_destructuring">Array Destructuring</a>을 사용하면 객체를 쉽게 반복 할 수 있습니다.</p>
-<pre class="brush: js notranslate">const obj = { foo: 'bar', baz: 42 };
+<pre class="brush: js ">const obj = { foo: 'bar', baz: 42 };
Object.entries(obj).forEach(([key, value]) =&gt; console.log(`${key}: ${value}`)); // "foo: bar", "baz: 42"
</pre>
diff --git a/files/ko/web/javascript/reference/global_objects/object/setprototypeof/index.html b/files/ko/web/javascript/reference/global_objects/object/setprototypeof/index.html
index 64f7a89a18..4b01abdf50 100644
--- a/files/ko/web/javascript/reference/global_objects/object/setprototypeof/index.html
+++ b/files/ko/web/javascript/reference/global_objects/object/setprototypeof/index.html
@@ -14,7 +14,7 @@ browser-compat: javascript.builtins.Object.setPrototypeOf
<h2 id="Syntax">Syntax</h2>
-<pre class="syntaxbox notranslate"><code>Object.setPrototypeOf(<var>obj</var>, <var>prototype</var>);</code></pre>
+<pre class="syntaxbox "><code>Object.setPrototypeOf(<var>obj</var>, <var>prototype</var>);</code></pre>
<h3 id="Parameters">Parameters</h3>
@@ -37,14 +37,14 @@ browser-compat: javascript.builtins.Object.setPrototypeOf
<p>Examples</p>
-<pre class="brush: js notranslate">var dict = Object.setPrototypeOf({}, null);
+<pre class="brush: js ">var dict = Object.setPrototypeOf({}, null);
</pre>
<h2 id="Polyfill">Polyfill</h2>
<p>예전 버전의 프로퍼티 {{jsxref("Object.prototype.__proto__")}} 를 사용한다면, 우리는 쉽게 Object.setPrototypeOf 가 쉽게 정의 할수 있다.</p>
-<pre class="brush: js notranslate">// Only works in Chrome and FireFox, does not work in IE:
+<pre class="brush: js ">// Only works in Chrome and FireFox, does not work in IE:
Object.setPrototypeOf = Object.setPrototypeOf || function(obj, proto) {
obj.__proto__ = proto;
return obj;
@@ -55,7 +55,7 @@ Object.setPrototypeOf = Object.setPrototypeOf || function(obj, proto) {
<p><code>Object.getPrototypeOf()</code> and {{jsxref("Object.proto", "Object.prototype.__proto__")}} 의 결합은 새로운 프로토타입 오브젝트에 전반적인 프로토타입 Chain을 설정하도록 할수 있다.</p>
-<pre class="brush: js notranslate">/**
+<pre class="brush: js ">/**
*** Object.appendChain(@object, @prototype)
*
* Appends the first non-native prototype of a chain to a new prototype.
@@ -103,7 +103,7 @@ Object.appendChain = function(oChain, oProto) {
<h4 id="First_example_프로토타입에_Chain_설정하기">First example: 프로토타입에 Chain 설정하기</h4>
-<pre class="brush: js notranslate">function Mammal() {
+<pre class="brush: js ">function Mammal() {
this.isMammal = 'yes';
}
@@ -129,7 +129,7 @@ console.log(oCat.breathing); // 'yes'
<h4 id="Second_example_객체_Constructor의_인스턴스에_존재하는_원래_값을_변경_및_해당_객체_프로토타입에_Chain_설정하기">Second example: 객체 Constructor의 인스턴스에 존재하는 원래 값을 변경 및 해당 객체 프로토타입에 Chain 설정하기</h4>
-<pre class="brush: js notranslate">function MySymbol() {
+<pre class="brush: js ">function MySymbol() {
this.isSymbol = 'yes';
}
@@ -146,7 +146,7 @@ console.log(typeof oPrime); // 'object'
<h4 id="Third_example_Function.prototype객체에_Chain을_설정하고_그_Chain에_새로운_함수를_설정하기">Third example: Function.prototype객체에 Chain을 설정하고 그 Chain에 새로운 함수를 설정하기</h4>
-<pre class="brush: js notranslate">function Person(sName) {
+<pre class="brush: js ">function Person(sName) {
this.identity = sName;
}
diff --git a/files/ko/web/javascript/reference/global_objects/regexp/exec/index.html b/files/ko/web/javascript/reference/global_objects/regexp/exec/index.html
index d20573f473..eb02391603 100644
--- a/files/ko/web/javascript/reference/global_objects/regexp/exec/index.html
+++ b/files/ko/web/javascript/reference/global_objects/regexp/exec/index.html
@@ -26,7 +26,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/exec
<h2 id="구문">구문</h2>
-<pre class="syntaxbox notranslate"><var>regexObj</var>.exec(<var>str</var>)</pre>
+<pre class="syntaxbox "><var>regexObj</var>.exec(<var>str</var>)</pre>
<h3 id="매개변수">매개변수</h3>
@@ -45,7 +45,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/exec
<p>다음과 같은 예제를 고려해보세요.</p>
-<pre class="brush: js notranslate">// Match "quick brown" followed by "jumps", ignoring characters in between
+<pre class="brush: js ">// Match "quick brown" followed by "jumps", ignoring characters in between
// Remember "brown" and "jumps"
// Ignore case
let re = /quick\s(brown).+?(jumps)/ig;
@@ -131,7 +131,7 @@ let result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog');</pre>
<p>If your regular expression uses the "<code>g</code>" flag, you can use the <code>exec()</code> method multiple times to find successive matches in the same string. When you do so, the search starts at the substring of <code>str</code> specified by the regular expression's {{jsxref("RegExp.lastIndex", "lastIndex")}} property ({{jsxref("RegExp.prototype.test()", "test()")}} will also advance the {{jsxref("RegExp.lastIndex", "lastIndex")}} property). For example, assume you have this script:</p>
-<pre class="brush: js notranslate">var myRe = /ab*/g;
+<pre class="brush: js ">var myRe = /ab*/g;
var str = 'abbcdefabh';
var myArray;
while ((myArray = myRe.exec(str)) !== null) {
@@ -143,7 +143,7 @@ while ((myArray = myRe.exec(str)) !== null) {
<p>This script displays the following text:</p>
-<pre class="notranslate">Found abb. Next match starts at 3
+<pre >Found abb. Next match starts at 3
Found ab. Next match starts at 9
</pre>
@@ -153,7 +153,7 @@ Found ab. Next match starts at 9
<p>You can also use <code>exec()</code> without creating a {{jsxref("RegExp")}} object:</p>
-<pre class="brush: js notranslate">var matches = /(hello \S+)/.exec('This is a hello world!');
+<pre class="brush: js ">var matches = /(hello \S+)/.exec('This is a hello world!');
console.log(matches[1]);
</pre>
diff --git a/files/ko/web/javascript/reference/global_objects/regexp/index.html b/files/ko/web/javascript/reference/global_objects/regexp/index.html
index 5675812788..166000e61a 100644
--- a/files/ko/web/javascript/reference/global_objects/regexp/index.html
+++ b/files/ko/web/javascript/reference/global_objects/regexp/index.html
@@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp
<p>다음의 세 표현식은 모두 같은 정규 표현식을 생성합니다.</p>
-<pre class="brush: js notranslate">/ab+c/i
+<pre class="brush: js ">/ab+c/i
new RegExp(/ab+c/, 'i') // 리터럴
new RegExp('ab+c', 'i') // 생성자
</pre>
@@ -46,7 +46,7 @@ new RegExp('ab+c', 'i') // 생성자
<p>예를 들어 다음 두 줄은 동일한 정규 표현식을 생성합니다.</p>
-<pre class="brush: js notranslate">let re = /\w+/
+<pre class="brush: js ">let re = /\w+/
let re = new RegExp('\\w+')</pre>
<h3 id="Perl_형태의_RegExp_속성">Perl  형태의 <code>RegExp</code> 속성</h3>
@@ -121,7 +121,7 @@ let re = new RegExp('\\w+')</pre>
<p>대치 문자열에는 <code>$1</code>과 <code>$2</code>를 사용하여 정규 표현식 패턴의 각 괄호에 일치한 결과를 받아옵니다.</p>
-<pre class="brush: js notranslate">let re = /(\w+)\s(\w+)/
+<pre class="brush: js ">let re = /(\w+)\s(\w+)/
let str = 'John Smith'
let newstr = str.replace(re, '$2, $1')
console.log(newstr)</pre>
@@ -132,7 +132,7 @@ console.log(newstr)</pre>
<p>기본 줄 바꿈 문자는 플랫폼(Unix, Windows 등)마다 다릅니다. 아래의 분할 스크립트는 모든 플랫폼의 줄 바꿈을 인식합니다.</p>
-<pre class="brush: js notranslate">let text = 'Some text\nAnd some more\r\nAnd yet\rThis is the end'
+<pre class="brush: js ">let text = 'Some text\nAnd some more\r\nAnd yet\rThis is the end'
let lines = text.split(/\r\n|\r|\n/)
console.log(lines) // logs [ 'Some text', 'And some more', 'And yet', 'This is the end' ]</pre>
@@ -140,7 +140,7 @@ console.log(lines) // logs [ 'Some text', 'And some more', 'And yet', 'This is t
<h3 id="여러_줄에서_정규_표현식_사용하기">여러 줄에서 정규 표현식 사용하기</h3>
-<pre class="brush: js notranslate">let s = 'Please yes\nmake my day!'
+<pre class="brush: js ">let s = 'Please yes\nmake my day!'
s.match(/yes.*day/);
// Returns null
@@ -152,7 +152,7 @@ s.match(/yes[^]*day/);
<p>{{JSxRef("Global_Objects/RegExp/sticky", "sticky")}} 플래그는 해당 정규 표현식이 접착 판별, 즉 {{jsxref("RegExp.prototype.lastIndex")}}에서 시작하는 일치만 확인하도록 할 수 있습니다.</p>
-<pre class="brush: js notranslate">let str = '#foo#'
+<pre class="brush: js ">let str = '#foo#'
let regex = /foo/y
regex.lastIndex = 1
@@ -165,7 +165,7 @@ regex.lastIndex // 0 (reset after match failure)</pre>
<p>접착 플래그 <code>y</code>의 일치는 정확히 <code>lastIndex</code> 위치에서만 발생할 수 있으나, 전역 플래그 <code>g</code>의 경우 <code>lastIndex</code> 또는 그 이후에서도 발생할 수 있습니다.</p>
-<pre class="brush: js notranslate">re = /\d/y;
+<pre class="brush: js ">re = /\d/y;
while (r = re.exec("123 456")) console.log(r, "AND re.lastIndex", re.lastIndex);
// [ '1', index: 0, input: '123 456', groups: undefined ] AND re.lastIndex 1
@@ -181,7 +181,7 @@ while (r = re.exec("123 456")) console.log(r, "AND re.lastIndex", re.lastIndex);
<p>러시아어나 히브리어와 같은 다른 언어의 문자까지 일치하려면 <code>\uhhhh</code>(이때 hhhh는 해당 문자의 16진법 Unicode 값) 문법을 사용하세요. 아래 예제에서는 문자열에서 Unicode 문자를 추출합니다.</p>
-<pre class="brush: js notranslate">let text = 'Образец text на русском языке'
+<pre class="brush: js ">let text = 'Образец text на русском языке'
let regex = /[\u0400-\u04FF]+/g
let match = regex.exec(text)
@@ -198,7 +198,7 @@ console.log(regex.lastIndex) // logs '15'
<h3 id="URL에서_서브도메인_추출하기">URL에서 서브도메인 추출하기</h3>
-<pre class="brush: js notranslate">let url = 'http://xxx.domain.com'
+<pre class="brush: js ">let url = 'http://xxx.domain.com'
console.log(/[^.]+/.exec(url)[0].substr(7)) // logs 'xxx'</pre>
<div class="blockIndicator note">
diff --git a/files/ko/web/javascript/reference/global_objects/regexp/regexp/index.html b/files/ko/web/javascript/reference/global_objects/regexp/regexp/index.html
index 387b5bceff..a5ed17a62c 100644
--- a/files/ko/web/javascript/reference/global_objects/regexp/regexp/index.html
+++ b/files/ko/web/javascript/reference/global_objects/regexp/regexp/index.html
@@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/RegExp
<p>리터럴, 생성자, 팩토리 표기법이 가능합니다.</p>
-<pre class="syntaxbox notranslate">/<var>pattern</var>/<var>flags</var>
+<pre class="syntaxbox ">/<var>pattern</var>/<var>flags</var>
new RegExp(<var>pattern</var>[, <var>flags</var>])
RegExp(<var>pattern</var>[, <var>flags</var>])
</pre>
@@ -73,7 +73,7 @@ RegExp(<var>pattern</var>[, <var>flags</var>])
<p>다음의 세 표현식은 모두 같은 정규 표현식을 생성합니다.</p>
-<pre class="brush: js notranslate">/ab+c/i
+<pre class="brush: js ">/ab+c/i
new RegExp(/ab+c/, 'i') // 리터럴
new RegExp('ab+c', 'i') // 생성자
</pre>
diff --git a/files/ko/web/javascript/reference/global_objects/regexp/test/index.html b/files/ko/web/javascript/reference/global_objects/regexp/test/index.html
index 07569e7eaf..8a4b200e5f 100644
--- a/files/ko/web/javascript/reference/global_objects/regexp/test/index.html
+++ b/files/ko/web/javascript/reference/global_objects/regexp/test/index.html
@@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/test
<h2 id="구문">구문</h2>
-<pre class="syntaxbox notranslate"><var>regexObj</var>.test(<var>str</var>)</pre>
+<pre class="syntaxbox "><var>regexObj</var>.test(<var>str</var>)</pre>
<h3 id="매개변수">매개변수</h3>
@@ -48,7 +48,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/test
<p>문자열의 맨 처음에 <code>"hello"</code>가 포함됐는지 알아보는 간단한 예제 코드입니다.</p>
-<pre class="brush: js notranslate">const str = 'hello world!';
+<pre class="brush: js ">const str = 'hello world!';
const result = /^hello/.test(str);
console.log(result); // true
@@ -56,7 +56,7 @@ console.log(result); // true
<p>다음은 일치 여부에 따라 다른 메시지를 기록하는 예제입니다.</p>
-<pre class="brush: js notranslate">function testInput(re, str) {
+<pre class="brush: js ">function testInput(re, str) {
let midstring;
if (re.test(str)) {
midstring = 'contains';
@@ -81,7 +81,7 @@ console.log(result); // true
<p>이 행동에 대한 예제가 다음 코드입니다.</p>
-<pre class="brush: js notranslate">const regex = /foo/g; // the "global" flag is set
+<pre class="brush: js ">const regex = /foo/g; // the "global" flag is set
// regex.lastIndex is at 0
regex.test('foo') // true
diff --git a/files/ko/web/javascript/reference/global_objects/string/lastindexof/index.html b/files/ko/web/javascript/reference/global_objects/string/lastindexof/index.html
index d2244feee5..90aeaf3af0 100644
--- a/files/ko/web/javascript/reference/global_objects/string/lastindexof/index.html
+++ b/files/ko/web/javascript/reference/global_objects/string/lastindexof/index.html
@@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf
<h2 id="구문">구문</h2>
-<pre class="syntaxbox notranslate"><var>str</var>.lastIndexOf(<var>searchValue</var>[, <var>fromIndex</var>])</pre>
+<pre class="syntaxbox "><var>str</var>.lastIndexOf(<var>searchValue</var>[, <var>fromIndex</var>])</pre>
<h3 id="매개변수">매개변수</h3>
@@ -38,7 +38,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf
<p>문자열의 문자는 왼쪽에서 오른쪽으로 인덱스를 매깁니다. 첫 번째 문자의 인덱스는 <code>0</code>이며, 마지막 문자의 인덱스는 <code>str.length -1</code>입니다.</p>
-<pre class="brush: js notranslate">'canal'.lastIndexOf('a'); //  3 반환
+<pre class="brush: js ">'canal'.lastIndexOf('a'); //  3 반환
'canal'.lastIndexOf('a', 2); //  1 반환
'canal'.lastIndexOf('a', 0); // -1 반환
'canal'.lastIndexOf('x'); // -1 반환
@@ -56,7 +56,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf
<p><code>lastIndexOf()</code> 메서드는 대소문자를 구분합니다. 예를 들어, 아래 예제는 <code>-1</code>을 반환합니다.</p>
-<pre class="brush: js notranslate">'Blue Whale, Killer Whale'.lastIndexOf('blue'); // -1 반환
+<pre class="brush: js ">'Blue Whale, Killer Whale'.lastIndexOf('blue'); // -1 반환
</pre>
<h2 id="예제">예제</h2>
@@ -65,7 +65,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf
<p>아래 예제는 문자열 <code>"Brave new world"</code> 내에서 특정 값의 위치를 확인하기 위해 {{jsxref("String.prototype.indexOf()", "indexOf()")}}와 <code>lastIndexOf()</code>를 사용합니다.</p>
-<pre class="brush: js notranslate">let anyString = 'Brave new world';
+<pre class="brush: js ">let anyString = 'Brave new world';
console.log('시작점으로부터 처음 만나는 w의 위치는 ' + anyString.indexOf('w'));
// logs 8
diff --git a/files/ko/web/javascript/reference/global_objects/string/slice/index.html b/files/ko/web/javascript/reference/global_objects/string/slice/index.html
index 3bd23ace3b..6c0c54a50b 100644
--- a/files/ko/web/javascript/reference/global_objects/string/slice/index.html
+++ b/files/ko/web/javascript/reference/global_objects/string/slice/index.html
@@ -16,7 +16,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/slice
<h2 id="문법">문법</h2>
-<pre class="syntaxbox notranslate"><code><var>str</var>.slice(<var>beginIndex</var>[, <var>endIndex</var>])</code></pre>
+<pre class="syntaxbox "><code><var>str</var>.slice(<var>beginIndex</var>[, <var>endIndex</var>])</code></pre>
<h3 id="매개변수">매개변수</h3>
@@ -47,7 +47,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/slice
<p>아래 예시는 새 문자열을 생성하기 위해 <code>slice()</code>를 사용합니다.</p>
-<pre class="brush: js notranslate">var str1 = 'The morning is upon us.', // the length of str1 is 23.
+<pre class="brush: js ">var str1 = 'The morning is upon us.', // the length of str1 is 23.
str2 = str1.slice(1, 8),
str3 = str1.slice(4, -2),
  str4 = str1.slice(12),
@@ -62,7 +62,7 @@ console.log(str5); // OUTPUT: ""
<p>아래 예시는 <code>slice()</code>에 음수 인덱스를 사용합니다.</p>
-<pre class="brush: js notranslate">var str = 'The morning is upon us.';
+<pre class="brush: js ">var str = 'The morning is upon us.';
str.slice(-3); // returns 'us.'
str.slice(-3, -1); // returns 'us'
str.slice(0, -1); // returns 'The morning is upon us'
@@ -70,16 +70,16 @@ str.slice(0, -1); // returns 'The morning is upon us'
<p>아래의 예시는 시작 인덱스를 찾기 위해 문자열의 끝에서부터 역방향으로 <code>11</code>개를 세고 끝 인덱스를 찾기 위해 문자열의 시작에서부터 정방향으로 <code>16</code>개를 셉니다.</p>
-<pre class="brush: js notranslate"><code>console.log(str.slice(-11, 16)) // =&gt; "is u";</code></pre>
+<pre class="brush: js "><code>console.log(str.slice(-11, 16)) // =&gt; "is u";</code></pre>
<p>아래에서는 시작 인덱스를 찾기 위해 문자열의 처음부터 정방향으로 <code>11</code>개를 세고 끝 인덱스를 찾기 위해 끝에서부터 <code>7</code>개를 셉니다.</p>
-<pre class="brush: js notranslate"><code>console.log(str.slice(11, -7)) // =&gt; "is u";</code>
+<pre class="brush: js "><code>console.log(str.slice(11, -7)) // =&gt; "is u";</code>
</pre>
<p>이 인수는 끝에서부터 5로 역순으로 계산하여 시작 인덱스를 찾은 다음 끝에서부터 1을 거쳐 끝 인덱스를 찾습니다.</p>
-<pre class="brush: js notranslate"><code>console.log(str.slice(-5, -1)) // =&gt; "n us";</code>
+<pre class="brush: js "><code>console.log(str.slice(-5, -1)) // =&gt; "n us";</code>
</pre>
<h2 id="Specifications">Specifications</h2>
diff --git a/files/ko/web/javascript/reference/global_objects/undefined/index.html b/files/ko/web/javascript/reference/global_objects/undefined/index.html
index ca11856dc0..eb75867c9a 100644
--- a/files/ko/web/javascript/reference/global_objects/undefined/index.html
+++ b/files/ko/web/javascript/reference/global_objects/undefined/index.html
@@ -16,7 +16,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/undefined
<h2 id="구문">구문</h2>
-<pre class="syntaxbox notranslate">undefined</pre>
+<pre class="syntaxbox ">undefined</pre>
<h2 id="설명">설명</h2>
@@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/undefined
<div class="note">
<p><code>undefined</code>는 <a href="/ko/docs/Web/JavaScript/Reference/Reserved_Words">예약어</a>가 아니기 때문에 전역 범위 외에서 {{Glossary("Identifier", "식별자")}}(변수 이름)로 사용할 수 있습니다. 그러나 유지보수와 디버깅 시 어려움을 낳을 수 있으므로 반드시 피해야 합니다.</p>
-<pre class="brush: js example-bad notranslate">// DON'T DO THIS
+<pre class="brush: js example-bad ">// DON'T DO THIS
// logs "foo string"
(function() {
@@ -49,7 +49,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/undefined
<p><code>undefined</code>와 일치, 불일치 연산자를 사용해 변수에 값이 할당됐는지 판별할 수 있습니다. 다음 예제에서 변수 <code>x</code>는 초기화되지 않았으므로 <code>if</code>문은 <code>true</code>로 평가됩니다.</p>
-<pre class="brush: js notranslate">var x;
+<pre class="brush: js ">var x;
if (x === undefined) {
// 이 문이 실행됨
}
@@ -68,7 +68,7 @@ else {
<p>위의 예제 대신 {{jsxref("Operators/typeof", "typeof")}}를 사용할 수도 있습니다.</p>
-<pre class="brush: js notranslate">var x;
+<pre class="brush: js ">var x;
if (typeof x === 'undefined') {
// 이 문이 실행됨
}
@@ -76,7 +76,7 @@ if (typeof x === 'undefined') {
<p><code>typeof</code>를 사용하는 이유 중 하나는 선언하지 않은 변수를 사용해도 오류를 던지지 않기 때문입니다.</p>
-<pre class="brush: js notranslate">// x를 선언한 적 없음
+<pre class="brush: js ">// x를 선언한 적 없음
if (typeof x === 'undefined') { // 오류 없이 true로 평가
// 이 문이 실행됨
}
@@ -90,7 +90,7 @@ if(x === undefined) { // ReferenceError
<p>전역 범위는 {{jsxref("globalThis", "전역 객체", "", 1)}}에 묶여 있으므로, 전역 맥락에서 변수의 존재 유무는 {{jsxref("Operators/in", "in")}} 연산자를 전역 객체 대상으로 실행해 알 수 있습니다. 즉,</p>
-<pre class="brush: js notranslate">if ('x' in window) {
+<pre class="brush: js ">if ('x' in window) {
// x가 전역으로 정의된 경우 이 문이 실행됨
}</pre>
@@ -98,7 +98,7 @@ if(x === undefined) { // ReferenceError
<p>{{jsxref("Operators/void", "void")}} 연산자를 제 3의 대안으로 사용할 수 있습니다.</p>
-<pre class="brush: js notranslate">var x;
+<pre class="brush: js ">var x;
if (x === void 0) {
// 이 문이 실행됨
}
diff --git a/files/ko/web/javascript/reference/lexical_grammar/index.html b/files/ko/web/javascript/reference/lexical_grammar/index.html
index 1f2349bc1a..c127dcd69c 100644
--- a/files/ko/web/javascript/reference/lexical_grammar/index.html
+++ b/files/ko/web/javascript/reference/lexical_grammar/index.html
@@ -166,7 +166,7 @@ translation_of: Web/JavaScript/Reference/Lexical_grammar
<p>첫 번째, '//'로 첨언하기입니다. 이는 아래의 예시처럼 같은 줄에 있는 모든 코드를 주석으로 바꿉니다.</p>
-<pre class="brush: js notranslate">function comment() {
+<pre class="brush: js ">function comment() {
// 자바스크립트의 각주 한 줄입니다.
console.log("Hello world!");
}
@@ -177,7 +177,7 @@ comment();
<p>예를 들면, 한 줄에 첨언할 때는 이렇게 쓸 수 있습니다 :</p>
-<pre class="brush: js notranslate">function comment() {
+<pre class="brush: js ">function comment() {
/* 자바스크립트 각주 한 줄입니다. */
console.log("Hello world!");
}
@@ -185,7 +185,7 @@ comment();</pre>
<p>여러 줄로 첨언할 때는, 이렇게 씁니다 :</p>
-<pre class="brush: js notranslate">function comment() {
+<pre class="brush: js ">function comment() {
/* This comment spans multiple lines. Notice
that we don't need to end the comment until we're done. */
console.log("Hello world!");
@@ -196,13 +196,13 @@ comment();</pre>
<p>function comment(x) {</p>
-<pre class="brush: js notranslate"> console.log("Hello " + x /* insert the value of x */ + " !");
+<pre class="brush: js "> console.log("Hello " + x /* insert the value of x */ + " !");
}
comment("world");</pre>
<p>게다가, 코드 실행을 막기 위해 코드를 무용화 시키는데도 사용할 수 있습니다. 아래처럼 코드를 코멘트로 감싸는 거죠:</p>
-<pre class="brush: js notranslate">function comment() {
+<pre class="brush: js ">function comment() {
/* console.log("Hello world!"); */
}
comment();</pre>
@@ -218,7 +218,7 @@ comment();</pre>
<p>The hashbang comment specifies the path to a specific JavaScript interpreter<br>
that you want to use to execute the script. An example is as follows:</p>
-<pre class="brush: js notranslate">#!/usr/bin/env node
+<pre class="brush: js ">#!/usr/bin/env node
console.log("Hello world");
</pre>
@@ -331,14 +331,14 @@ console.log("Hello world");
<p>Reserved words actually only apply to Identifiers (vs. <code>IdentifierNames</code>) . As described in <a href="http://es5.github.com/#A.1">es5.github.com/#A.1</a>, these are all <code>IdentifierNames</code> which do not exclude <code>ReservedWords</code>.</p>
-<pre class="brush: js notranslate">a.import
+<pre class="brush: js ">a.import
a['import']
a = { import: 'test' }.
</pre>
<p>On the other hand the following is illegal because it's an <code>Identifier</code>, which is an <code>IdentifierName</code> without the reserved words. Identifiers are used for <code>FunctionDeclaration, FunctionExpression, VariableDeclaration</code> and so on. <code>IdentifierNames </code>are used for<code> MemberExpression, CallExpression</code> and so on.</p>
-<pre class="brush: js notranslate">function import() {} // Illegal.</pre>
+<pre class="brush: js ">function import() {} // Illegal.</pre>
<h2 id="리터럴">리터럴</h2>
@@ -346,20 +346,20 @@ a = { import: 'test' }.
<p>See also <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/null"><code>null</code></a> for more information.</p>
-<pre class="brush: js notranslate">null</pre>
+<pre class="brush: js ">null</pre>
<h3 id="불리언_리터럴">불리언 리터럴</h3>
<p>See also <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean"><code>Boolean</code></a> for more information.</p>
-<pre class="brush: js notranslate">true
+<pre class="brush: js ">true
false</pre>
<h3 id="숫자_리터럴">숫자 리터럴</h3>
<h4 id="10진법">10진법</h4>
-<pre class="brush: js notranslate">1234567890
+<pre class="brush: js ">1234567890
42
// Caution when using with a leading zero:
@@ -373,7 +373,7 @@ false</pre>
<p>The decimal exponential literal is specified by the following format: <code>beN</code>; where <code>b</code> is a base number (integer or floating), followed by <code>e</code> char (which serves as separator or <em>exponent indicator</em>) and<em> </em><code>N</code>, which is <em>exponent</em> or <em>power</em> number – a signed integer (as per 2019 ECMA-262 specs): </p>
-<pre class="notranslate">0e-5   // =&gt; 0
+<pre >0e-5   // =&gt; 0
0e+5   // =&gt; 0
5e1    // =&gt; 50
175e-2 // =&gt; 1.75
@@ -384,7 +384,7 @@ false</pre>
<p>Binary number syntax uses a leading zero followed by a lowercase or uppercase Latin letter "B" (<code>0b</code> or <code>0B</code>). Because this syntax is new in ECMAScript 2015, see the browser compatibility table, below. If the digits after the <code>0b</code> are not 0 or 1, the following <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError">SyntaxError</a></code> is thrown: "Missing binary digits after 0b".</p>
-<pre class="brush: js notranslate">var FLT_SIGNBIT = 0b10000000000000000000000000000000; // 2147483648
+<pre class="brush: js ">var FLT_SIGNBIT = 0b10000000000000000000000000000000; // 2147483648
var FLT_EXPONENT = 0b01111111100000000000000000000000; // 2139095040
var FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607</pre>
@@ -392,7 +392,7 @@ var FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607</pre>
<p>Octal number syntax uses a leading zero followed by a lowercase or uppercase Latin letter "O" (<code>0o</code> or <code>0O)</code>. Because this syntax is new in ECMAScript 2015, see the browser compatibility table, below. If the digits after the <code>0o</code> are outside the range (01234567), the following <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError">SyntaxError</a></code> is thrown: "Missing octal digits after 0o".</p>
-<pre class="brush: js notranslate">var n = 0O755; // 493
+<pre class="brush: js ">var n = 0O755; // 493
var m = 0o644; // 420
// Also possible with just a leading zero (see note about decimals above)
@@ -404,7 +404,7 @@ var m = 0o644; // 420
<p>Hexadecimal number syntax uses a leading zero followed by a lowercase or uppercase Latin letter "X" (<code>0x</code> or <code>0X)</code>. If the digits after 0x are outside the range (0123456789ABCDEF), the following <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError">SyntaxError</a></code> is thrown: "Identifier starts immediately after numeric literal".</p>
-<pre class="brush: js notranslate">0xFFFFFFFFFFFFFFFFF // 295147905179352830000
+<pre class="brush: js ">0xFFFFFFFFFFFFFFFFF // 295147905179352830000
0x123456789ABCDEF // 81985529216486900
0XA // 10
</pre>
@@ -413,7 +413,7 @@ var m = 0o644; // 420
<p>The {{jsxref("BigInt")}} type is a numeric primitive in JavaScript that can represent integers with arbitrary precision. BigInt literals are created by appending <code>n</code> to the end of an integer.</p>
-<pre class="notranslate">123456789123456789n     // 123456789123456789
+<pre >123456789123456789n     // 123456789123456789
0o777777777777n         // 68719476735
0x123456789ABCDEFn  // 81985529216486895‬
0b11101001010101010101n // 955733
@@ -421,12 +421,12 @@ var m = 0o644; // 420
<p>Note that legacy octal numbers with just a leading zero won't work for <code>BigInt</code>:</p>
-<pre class="example-bad notranslate">// 0755n
+<pre class="example-bad ">// 0755n
// SyntaxError: invalid BigInt syntax</pre>
<p>For octal <code>BigInt</code> numbers, always use zero followed by the letter "o" (uppercase or lowercase):</p>
-<pre class="example-good notranslate">0o755n</pre>
+<pre class="example-good ">0o755n</pre>
<p>For more information about <code>BigInt</code>, see also <a href="/en-US/docs/Web/JavaScript/Data_structures#BigInt_type">JavaScript data structures</a>.</p>
@@ -434,7 +434,7 @@ var m = 0o644; // 420
<p>To improve readability for numeric literals, underscores (<code>_</code>, <code>U+005F</code>) can be used as separators:</p>
-<pre class="notranslate">// separators in decimal numbers
+<pre >// separators in decimal numbers
1_000_000_000_000
1_050.95
@@ -453,7 +453,7 @@ var m = 0o644; // 420
<p>Note these limitations:</p>
-<pre class="example-bad notranslate">// More than one underscore in a row is not allowed
+<pre class="example-bad ">// More than one underscore in a row is not allowed
100__000; // SyntaxError
// Not allowed at the end of numeric literals
@@ -467,7 +467,7 @@ var m = 0o644; // 420
<p>See also {{jsxref("Object")}} and <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer">Object initializer</a> for more information.</p>
-<pre class="brush: js notranslate">var o = { a: 'foo', b: 'bar', c: 42 };
+<pre class="brush: js ">var o = { a: 'foo', b: 'bar', c: 42 };
// shorthand notation. New in ES2015
var a = 'foo', b = 'bar', c = 42;
@@ -481,7 +481,7 @@ var o = { a: a, b: b, c: c };
<p>See also {{jsxref("Array")}} for more information.</p>
-<pre class="brush: js notranslate">[1954, 1974, 1990, 2014]</pre>
+<pre class="brush: js ">[1954, 1974, 1990, 2014]</pre>
<h3 id="문자열_리터럴">문자열 리터럴</h3>
@@ -497,14 +497,14 @@ var o = { a: a, b: b, c: c };
<p>Any code points may appear in the form of an escape sequence. String literals evaluate to ECMAScript String values. When generating these String values Unicode code points are UTF-16 encoded.</p>
-<pre class="brush: js notranslate">'foo'
+<pre class="brush: js ">'foo'
"bar"</pre>
<h4 id="16진수_이스케이프_시퀀스">16진수 이스케이프 시퀀스</h4>
<p>Hexadecimal escape sequences consist of <code>\x</code> followed by exactly two hexadecimal digits representing a code unit or code point in the range 0x0000 to 0x00FF.</p>
-<pre class="brush: js notranslate">'\xA9' // "©"
+<pre class="brush: js ">'\xA9' // "©"
</pre>
<h4 id="유니코드_이스케이프_시퀀스">유니코드 이스케이프 시퀀스</h4>
@@ -513,7 +513,7 @@ var o = { a: a, b: b, c: c };
<p>See also {{jsxref("String.fromCharCode()")}} and {{jsxref("String.prototype.charCodeAt()")}}.</p>
-<pre class="brush: js notranslate">'\u00A9' // "©" (U+A9)</pre>
+<pre class="brush: js ">'\u00A9' // "©" (U+A9)</pre>
<h4 id="유니코드_코드_포인트_시퀀스">유니코드 코드 포인트 시퀀스</h4>
@@ -521,7 +521,7 @@ var o = { a: a, b: b, c: c };
<p>See also {{jsxref("String.fromCodePoint()")}} and {{jsxref("String.prototype.codePointAt()")}}.</p>
-<pre class="brush: js notranslate">'\u{2F804}' // CJK COMPATIBILITY IDEOGRAPH-2F804 (U+2F804)
+<pre class="brush: js ">'\u{2F804}' // CJK COMPATIBILITY IDEOGRAPH-2F804 (U+2F804)
// the same character represented as a surrogate pair
'\uD87E\uDC04'</pre>
@@ -530,7 +530,7 @@ var o = { a: a, b: b, c: c };
<p>See also <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp"><code>RegExp</code></a> for more information.</p>
-<pre class="brush: js notranslate">/ab+c/g
+<pre class="brush: js ">/ab+c/g
// An "empty" regular expression literal
// The empty non-capturing group is necessary
@@ -541,7 +541,7 @@ var o = { a: a, b: b, c: c };
<p>See also <a href="/en-US/docs/Web/JavaScript/Reference/template_strings">template strings</a> for more information.</p>
-<pre class="brush: js notranslate">`string text`
+<pre class="brush: js ">`string text`
`string text line 1
string text line 2`
@@ -568,7 +568,7 @@ tag `string text ${expression} string text`</pre>
<p>1. A semicolon is inserted before, when a <a href="#Line_terminators">Line terminator</a> or "}" is encountered that is not allowed by the grammar.</p>
-<pre class="brush: js notranslate">{ 1 2 } 3
+<pre class="brush: js ">{ 1 2 } 3
// is transformed by ASI into
@@ -578,7 +578,7 @@ tag `string text ${expression} string text`</pre>
<p>Here <code>++</code> is not treated as a <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#Increment">postfix operator</a> applying to variable <code>b</code>, because a line terminator occurs between <code>b</code> and <code>++</code>.</p>
-<pre class="brush: js notranslate">a = b
+<pre class="brush: js ">a = b
++c
// is transformend by ASI into
@@ -598,7 +598,7 @@ a = b;
<li><code>module</code></li>
</ul>
-<pre class="brush: js notranslate">return
+<pre class="brush: js ">return
a + b
// is transformed by ASI into
diff --git a/files/ko/web/javascript/reference/operators/await/index.html b/files/ko/web/javascript/reference/operators/await/index.html
index 00b5fd3eff..4087edfca7 100644
--- a/files/ko/web/javascript/reference/operators/await/index.html
+++ b/files/ko/web/javascript/reference/operators/await/index.html
@@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Operators/await
<h2 id="구문">구문</h2>
-<pre class="syntaxbox notranslate">[<em>rv</em>] = await <em>expression</em>;</pre>
+<pre class="syntaxbox ">[<em>rv</em>] = await <em>expression</em>;</pre>
<dl>
<dt><code>expression</code></dt>
@@ -34,7 +34,7 @@ translation_of: Web/JavaScript/Reference/Operators/await
<p>만약 <code>Promise</code>가 <code>await</code>에 넘겨지면, <code>await</code>은 <code>Promise</code>가 fulfill되기를 기다렸다가, 해당 값을 리턴합니다.</p>
-<pre class="brush: js notranslate">function resolveAfter2Seconds(x) {
+<pre class="brush: js ">function resolveAfter2Seconds(x) {
return new Promise(resolve =&gt; {
setTimeout(() =&gt; {
resolve(x);
@@ -52,7 +52,7 @@ f1();
<p>{{jsxref("Global_Objects/Promise/then", "Thenable objects")}} will be fulfilled just the same.</p>
-<pre class="notranslate"><code>async function f2() {
+<pre ><code>async function f2() {
const thenable = {
then: function(resolve, _reject) {
resolve('resolved!')
@@ -65,7 +65,7 @@ f2();</code></pre>
<p>만약 값이 <code>Promise</code>가 아니라면, 해당 값은 <code>resolve</code>된 <code>Promise</code>로 변환되며 이를 기다립니다.</p>
-<pre class="brush: js notranslate">async function f2() {
+<pre class="brush: js ">async function f2() {
var y = await 20;
console.log(y); // 20
}
@@ -74,7 +74,7 @@ f2();
<p>만약 <code>Promise</code>가 <code>reject</code>되면, <code>reject</code>된 값이 <code>throw</code>됩니다.</p>
-<pre class="brush: js notranslate">async function f3() {
+<pre class="brush: js ">async function f3() {
try {
var z = await Promise.reject(30);
} catch(e) {
@@ -86,7 +86,7 @@ f3();
<p>try블럭 없이 rejected <code>Promise</code>다루기</p>
-<pre class="notranslate"><code>var response = await promisedFunction().catch((err) =&gt; { console.error(err); });
+<pre ><code>var response = await promisedFunction().catch((err) =&gt; { console.error(err); });
// response will be undefined if the promise is rejected</code></pre>
<h2 id="Specifications">Specifications</h2>