TIL

오늘 한 일

Move Zeroes 파이썬 문제풀이

어제 풀었던 Move Zeroes 문제에 파이썬 풀이도 추가했다. 파이썬으로 풀어보면서 리스트가 자바스크립트의 배열과 어떻게 다른지도 알아볼 수 있었다. 그리고 좀 신기했던 게 다른 사람 풀이를 보면서 또 찾아봤는데, 자바스크립트에서 분해대입이 아닌 이상은 변수를 콤마로 구분해 같이 선언하고 할당하는 게 안되는데, 파이썬에서는 가능하다.

1
2
3
const a = 1, b = 2; // 이것은 가능하지만
const a, b = 1, 2; // 이것은 불가능하다.
// SyntaxError: Missing initializer in const declaration

1
2
3
4
5
a = 1, b = 2 
# 이것은 불가능하지만
# SyntaxError: can't assign to literal
a, b = 1, 2
# 이것은 가능하다

좀 헷갈리기는 하는데, 다른 언어를 배우면서 비교해보는 것도 재미있다. 파이썬에서 내 기준 묘한 사용법을 보게되면, ‘어 이거 자바스크립트는 안되지 않나?’하면서 테스트해보고 비교해보니까 같이 공부가 된다.

You don’t know JS: 타입 정리

카일 심슨의 You don’t know JS를 보면서 내용을 정리하고 이전에 배웠던 내용을 정리하고 있다.
책을 읽으면서 정리하려고 했는데 번역이 조금 아쉬웠다. 예를 들면 ‘nullfalsy한 유일한 원시 값이지만, 타입은 object인 특별한 존재다.’라는 문장이 있었다. undefined0도 빈문자열도 다 falsy인 원시값인데 왜 저렇게 썼지 의문이 들어서 github에 올려져 있는 원문을 찾았다.

null is the only primitive value that is “falsy” (aka false-like; see Chapter 4) but that also returns “object” from the typeof check.

라고 되어있는데 이문장을 ‘nullfalsy이면서, typeof 체크에서 object를 반환하는 유일한 원시값이다.’라고 번역했어야 되지 않을까 싶다.(이문장도 매끄러운 번역인지는 잘 모르겠다. 부끄럽게도 영어를 잘 못한다…)
그래서 원문이랑 책을 번갈아 보기로 했다.
자바스크립트에 대한 이해가 없었을 때는 좀 어렵게 느껴진 책이었는데, 지금은 놓치고 있는 자바스크립트의 특성을 하나씩 짚어내면서 더 깊이 다지는 느낌으로 읽을 수 있게 되었다.

Share Comments