Skip to content

[문서] 2회차 과제 C29 충돌 해결#1853

Open
taejinchoi-cbnu wants to merge 3 commits into
javascript-tutorial:2026-en-mergefrom
taejinchoi-cbnu:task2-clean
Open

[문서] 2회차 과제 C29 충돌 해결#1853
taejinchoi-cbnu wants to merge 3 commits into
javascript-tutorial:2026-en-mergefrom
taejinchoi-cbnu:task2-clean

Conversation

@taejinchoi-cbnu
Copy link
Copy Markdown
Contributor

@taejinchoi-cbnu taejinchoi-cbnu commented May 15, 2026

요약

2회차 과제 C29 충돌 해결 완료하였습니다.

수정 파일

  • 2-ui/4-forms-controls/3-events-change-input/1-deposit-calculator/task.md
  • 2-ui/4-forms-controls/3-events-change-input/article.md
  • 2-ui/5-loading/01-onload-ondomcontentloaded/article.md
  • 2-ui/5-loading/02-script-async-defer/article.md
  • 3-frames-and-windows/01-popup-windows/article.md
  • 4-binary/02-text-decoder/article.md
  • 5-network/01-fetch/article.md

Pull Request 체크리스트

TODO

  • 번역 규칙을 확인하셨나요?
    • 줄 바꿈과 단락을 '원문과 동일하게' 유지하셨나요?
    • 맞춤법 검사기로 맞춤법을 확인하셨나요?
    • 마크다운 문법에 사용되는 공백(스페이스), 큰따옴표("), 작은따옴표('), 대시(-), 백틱(`) 등의 특수문자는 그대로 두셨나요?
  • 로컬 서버 세팅 후 최종 결과물을 확인해 보셨나요?
  • PR 하나엔 번역문 하나만 넣으셨나요?
  • 의미 있는 커밋 메시지를 작성하셨나요?
    • 예시
      • [프락시] 번역
      • [프락시] 과제 번역
      • [if문과 조건부 연산자 '?'] 리뷰
      • [주석] 2차 리뷰
      • [Date 객체와 날짜] 번역

Copy link
Copy Markdown
Contributor Author

@taejinchoi-cbnu taejinchoi-cbnu May 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

해당 파일의 경우 전체 미번역이고 /3-frames-and-windowsindex.md만 번역된 미번역 챕터 같아 일단 충돌 마커만 지우고 commit에 전체 번역은 진행하지 않았습니다.
하지만 따로 번역은 진행해두어서 말씀해주시면 바로 commit 하겠습니다.

@taejinchoi-cbnu
Copy link
Copy Markdown
Contributor Author

@Turtle-Hwan 리뷰 부탁드립니다~

Copy link
Copy Markdown

@Turtle-Hwan Turtle-Hwan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다~! 자잘한 부분들 리뷰해보았어요.


<<<<<<< HEAD
알아두세요! 텍스트뿐만 아니라 모든 것을 복사·붙여넣기 할 수 있습니다. 예를 들어 OS 파일 매니저에서 파일을 복사해 붙여넣을 수 있습니다.
(붙여넣기는 얼럿창에 나오지만 잘라내기·복사하기는 '-'로 보입니다 - 옮긴이)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

옮긴이 글을 어떤 방식으로 추가하면 좋을 지 (주석 등) 논의가 필요해 보여요.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

옮긴이 글을 어떤 방식으로 추가하면 좋을 지 (주석 등) 논의가 필요해 보여요.

로컬 서버로 돌려보면서 검증하니까 copy랑 paste할 때 alert 창에 - 만 나오고
그 다음에 아래에서 "알아두세요! ~" 라고 나와가지고 괄호로 부연 설명 느낌으로 추가해둔 것 입니다.

그래서 대부분의 브라우저는 복사하기·붙여넣기 같은 특정 사용자 동작이 일어나는 범위 안에서만 클립보드 읽기·쓰기에 끊김없이 접근할 수 있도록 허용합니다.

So most browsers allow seamless read/write access to the clipboard only in the scope of certain user actions, such as copying/pasting etc.
Firefox를 제외한 모든 브라우저에서는 `dispatchEvent`로 '사용자 지정(custom)' 클립보드 이벤트를 생성하는 것이 금지하고 있습니다. 그런 이벤트를 보내는(dispatch) 데 성공하더라도 명세에는 이러한 '합성(synthetic)' 이벤트가 클립보드에 접근해서는 안 된다고 명확히 규정합니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Firefox를 제외한 모든 브라우저에서는 `dispatchEvent`로 '사용자 지정(custom)' 클립보드 이벤트를 생성하는 것이 금지하고 있습니다. 그런 이벤트를 보내는(dispatch) 데 성공하더라도 명세에는 이러한 '합성(synthetic)' 이벤트가 클립보드에 접근해서는 안 된다고 명확히 규정합니다.
Firefox를 제외한 모든 브라우저에서는 `dispatchEvent`로 '사용자 지정(custom)' 클립보드 이벤트를 생성하는 것이 금지되어 있습니다. 그런 이벤트를 보내는(dispatch) 데 성공하더라도 명세에는 이러한 '합성(synthetic)' 이벤트가 클립보드에 접근해서는 안 된다고 명확히 규정합니다.

문법상 “생성하는 것이 금지하고 있습니다”가 어색해요. “생성하는 것이 금지되어 있습니다” 또는 “생성하는 것을 금지하고 있습니다”가 자연스러워요.

| `input` | For text inputs on every change. | Triggers immediately unlike `change`. |
| `cut/copy/paste` | Cut/copy/paste actions. | The action can be prevented. The `event.clipboardData` property gives access to the clipboard. All browsers except Firefox also support `navigator.clipboard`. |
>>>>>>> upstream/master
| `cut`, `copy`, `paste` | 잘라내기·복사하기·붙여넣기 할 때 이벤트 발생 | 브라우저 기본 동작을 막아 이벤트 실행을 막을 수 있음. \ `event.clipboardData` 프로퍼티를 사용하면 클립보드에 저장된 데이터를 읽고 쓸 수 있음 \ (Firefox를 제외한 모든 브라우저는 `navigator.clipboard` 도 지원) |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `cut`, `copy`, `paste` | 잘라내기·복사하기·붙여넣기 할 때 이벤트 발생 | 브라우저 기본 동작을 막아 이벤트 실행을 막을 수 있음. \ `event.clipboardData` 프로퍼티를 사용하면 클립보드에 저장된 데이터를 읽고 쓸 수 있음 \ (Firefox를 제외한 모든 브라우저는 `navigator.clipboard` 도 지원) |
| `cut`, `copy`, `paste` | 잘라내기·복사하기·붙여넣기 할 때 이벤트 발생 | 브라우저 기본 동작을 막아 이벤트 실행을 막을 수 있음. `event.clipboardData` 프로퍼티를 사용하면 클립보드에 저장된 데이터를 읽고 쓸 수 있음. Firefox를 제외한 모든 브라우저는 `navigator.clipboard`도 지원 |

요약 표 안에 역슬래시 \가 그대로 들어가 있어 렌더링 시 노출될 수 있어요. event.clipboardData 앞과 Firefox 설명 앞의 \는 의도된 것이 아니면 제거하는 게 좋아 보여요.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

가독성 위해서 markdown 문법으로 \n 을 위해서 넣은건데 혹시 렌더링 안되는 부분이면 제거 하겠습니다!

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아아 그런 거라면 좋아 보입니다!!

alert('Page loaded');
>>>>>>> upstream/master

// 이번엔 이미지가 제대로 불러와 진 후에 얼럿창이 실행됩니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// 이번엔 이미지가 제대로 불러와 진 후에 얼럿창이 실행됩니다.
// 이번엔 이미지가 제대로 불러와진 후에 얼럿창이 실행됩니다.

“불러와 진 후”는 “불러와진 후”로 붙여 써야 할 거 같아요

=======
The `defer` attribute tells the browser not to wait for the script. Instead, the browser will continue to process the HTML, build DOM. The script loads "in the background", and then runs when the DOM is fully built.
>>>>>>> upstream/master
브라우저는 `defer` 속성이 있는 스크립트(이하 defer 스크립트 또는 지연 스크립트)를 '백그라운드'에서 다운로드합니다. 따라서 지연 스크립트를 다운로드하는 도중에도 HTML 처리를 계속 진행하며 DOM을 생성합니다. 그리고 defer 스크립트 실행은 DOM 구성이 완료된 뒤 실행됩니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
브라우저는 `defer` 속성이 있는 스크립트(이하 defer 스크립트 또는 지연 스크립트)를 '백그라운드'에서 다운로드합니다. 따라서 지연 스크립트를 다운로드하는 도중에도 HTML 처리를 계속 진행하며 DOM을 생성합니다. 그리고 defer 스크립트 실행은 DOM 구성이 완료된 뒤 실행됩니다.
브라우저는 `defer` 속성이 있는 스크립트(이하 defer 스크립트 또는 지연 스크립트)를 '백그라운드'에서 다운로드합니다. 따라서 지연 스크립트를 다운로드하는 도중에도 HTML 처리를 계속 진행하며 DOM을 생성합니다. 그리고 defer 스크립트는 DOM 구성이 완료된 뒤 실행됩니다.

“defer 스크립트 실행은 ... 실행됩니다”처럼 실행이 반복되어 어색해요. “defer 스크립트는 DOM 구성이 완료된 뒤 실행됩니다”처럼 다듬으면 좋겠어요.


In this example, `loadScript(src)` function adds a script and also sets `async` to `false`.
>>>>>>> upstream/master
아래 예시에선 `loadScript(src)` 함수는 스크립트를 추가하고 `async`를 `false`로 설정합니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
아래 예시에선 `loadScript(src)` 함수는 스크립트를 추가하고 `async``false`로 설정합니다.
아래 예시에서 `loadScript(src)` 함수는 스크립트를 추가하고 `async``false`로 설정합니다.

“아래 예시에선 loadScript(src) 함수는”은 문장 구조가 어색해요. “아래 예시에서 loadScript(src) 함수는” 정도가 자연스러워요.

Don't forget to put "loading" indication and disable buttons that aren't functional yet. Let the user clearly see what he can do on the page, and what's still getting ready.
```
>>>>>>> upstream/master
``` No newline at end of file
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
```
```

파일 끝에 newline이 없어요. 마크다운 파일이므로 마지막 줄바꿈을 추가하는 게 좋아 보여요.

- **`fatal`** -- boolean, if `true` then throw an exception for invalid (non-decodable) characters, otherwise (default) replace them with character `\uFFFD`.
- **`ignoreBOM`** -- boolean, if `true` then ignore BOM (an optional byte-order Unicode mark), rarely needed.
>>>>>>> upstream/master
- **`ignoreBOM`** -- 불린 값이 `true`인 경우 사용되지 않는 바이트 순서 표식(an optional byte-order Unicode mark, BOM)을 무시합니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **`ignoreBOM`** -- 불린 값이 `true`인 경우 사용되지 않는 바이트 순서 표식(an optional byte-order Unicode mark, BOM)을 무시합니다.
- **`ignoreBOM`** -- 불린 값이 `true`인 경우 선택적인 바이트 순서 유니코드 표식(an optional byte-order Unicode mark, BOM)을 무시합니다. 이 옵션은 거의 필요하지 않습니다.

an optional byte-order Unicode mark, rarely needed를 “사용되지 않는 바이트 순서 표식”으로 옮기면 의미가 달라져요. “선택적인 바이트 순서 유니코드 표식(BOM)” 정도로 수정하고, 거의 필요하지 않다는 뉘앙스도 살리면 좋겠어요.

- `FormData`객체 -- `form/multipart` 형태로 데이터를 전송하기 위해 쓰입니다.
- 문자열(예: JSON으로 인코딩된 문자열)
- `FormData` 객체 -- `multipart/form-data` 형태로 데이터를 전송하기 위해 쓰입니다.
- `Blob`나 `BufferSource` -- 바이너리 데이터 전송을 위해 쓰입니다.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `Blob` `BufferSource` -- 바이너리 데이터 전송을 위해 쓰입니다.
- `Blob` / `BufferSource` -- 바이너리 데이터 전송을 위해 쓰입니다.

BlobBufferSource가 어색해요. 원문처럼 Blob/BufferSource 슬래시 형태를 유지하면 더 나을 거 같아요.

Comment on lines 313 to 314
- `headers` -- 요청 헤드가 담긴 객체(제약 사항이 있음)
- `body` -- 보내려는 데이터(요청 본문)로 `string`이나 `FormData`, `BufferSource`, `Blob`, `UrlSearchParams` 객체 형태
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `headers` -- 요청 헤더가 담긴 객체(제약 사항이 있음)
- `body` -- 보내려는 데이터(요청 본문)로 `string`이나 `FormData`, `BufferSource`, `Blob`, `URLSearchParams` 객체 형태

바로 아래 요약 항목에서 “요청 헤드”는 “요청 헤더”가 맞고, UrlSearchParams는 실제 API 명칭인 URLSearchParams로 수정해야 해요.

@taejinchoi-cbnu
Copy link
Copy Markdown
Contributor Author

2-ui/4-forms-controls/3-events-change-input/article.md 의 ( - 옮긴이) 부분 논의 제외하고는 반영하겠습니다. 꼼꼼한 리뷰 감사합니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants