전체 글

    [JS] if (Number(str[i])===true) 의 값

    if (Number(str[i])===true) 만약 str[i]가 숫자형태의 문자열일때 위의 값은 무엇이 될까? 간단하게 생각해 본다면 true가 나온다고 생각할수 있으나 실상은 False가 출력된다 만약 사용자가 값을 if (Number(str[i])) 단순히 이렇게 했다면 True가 출력되게 된다. 그 이유는 조건문에서는 NaN을 제외한 숫자는 truthy판정을 받기 때문이다. 그럼 위의 값은 왜 false가 되는것일까? 그이유는 if(Number(str[i])) 의 뜻은 str[i] 가 숫자 일때 ture 라는 뜻이라고 판단되고. 하지 만 if(Number(str[i]) === ture)는 (숫자=== ture) 라는 값을 물어보는것이기 때문이다... 따라서 숫자와 boolean 값은 다르니 if..

    [JS]Closure에 대해

    it('closure를 사용해 만든 property는 private하고 변경이 불가능합니다.', function() { function Person(firstname, lastname) { let fullName = firstname + ' ' + lastname; this.getFirstName = function() { return firstname; }; this.getLastName = function() { return lastname; }; this.getFullName = function() { return fullName; }; } let aPerson = new Person('John', 'Smith'); aPerson.firstname = 'Penny'; aPerson.lastname ..

    알고리즘 문제 1. 숫자의 모든 자릿수의 합

    문제의 조건은 1. 숫자의 모든 자릿수의 합을 구해야합니다 2. 숫자가 음수라면 가장 앞의 숫자는 음수로 취급되어야 합니다 처음 딱 봤을때의 느낌은 음? 엄청 쉬울것 같은데 였다. 하지만 천만에 문제를 시작하자마자 음수의 취급에 대해서 난관에 부딪혔다. 하지만 일단 아는 지식으로 1. 먼저 숫자는 인덱스로 조회가 불가능하므로 문자열로 바꾸어서 반복문을 써야겠구나 라는 생각을 먼저했다 2. 문자열로 바꾼이후에는 -의 취급은 어떻게 되는가 였다 이또한 문자열로 취급되어 0번째 인덱스가 음수일경우 숫자인 문자열이 아니라 "-" 가왔다. 3. 이후에는 간단했다 양수일 경우에는 -의 취급을 신경쓸 필요가 없으므로 그냥 +만 하면 합이 나왔다 따라서 이문제의 답은 function sumDigits(num) { le..

    [JS]Chain Scope 예시 2개

    {let variable = "top-level"; function parentfunction() { let variable = "local"; function childfunction() { return variable; } return childfunction(); // 'local' } variable의 값은 무엇이 나올까? 첫번째 예시에서 variable의 값은 무엇이 나올까 언뜻보면 맨위의 anonymous function을 보면 variable의 값이 top-level이 아닐까 하는 생각이 든다 하지만 문제에서 요구하는 것은 parentfunction()을 실행시켯을때의 variable의 값이다 따라서 안쪽에서 실행된 함수 parentfunction() 새로운 변수 variable을 만들고 생..

    [JS]Scope 변수의 변화 해설

    나를 혼란에 빠트린 두가지 예시 내가 스코프에 대해서 배웠던 가장 간단한 사실. 안에서는 밖을 볼수있고 밖에서는 안을 볼수없다. 스코프를 가장 간단하게 설명할수 있지만 그만큼 예시를 보지않으면 알수가 없다. 아래의 첫번째 예제를 보면 밖에서 선언된 a,b라는 변수가 있고 첫번째 예제 함수안에는 a를 재할당 한것과 b.name를 재할당하는 식이 있다. 하지만 두번째 예제에는 함수 실행식만 있을뿐이지 인자를 받지는 않는다. 두번째 예제와 첫번째 예제가 틀린점은 함수의 파라미터가 있는것과 없는 것이다. 이 두가지 차이가 틀린 이유는 인자로 들어가느냐 안들어가느냐의 차이에 따라 값이 할당이 되는건지 아니면 그냥 값을 받아가는지가 결정되기 때문이다 그다음 중요한것은 변수의 할당에서 "Primitive type"은..

    VScode Github 오류 Fix

    1. VScode github로그인 방법 이놈의 VScode는 사용자가 로그아웃만 맘대로 할수있지 로그인창을 따로 가지고 있지는 않다... 그러므로 시도해야할 방법은 먼저 왼쪽 바에 나뭇가지 표시창을 눌러보면 폴더 설정을 할수있다 거기서 먼저 설정을 하고 command + shift + p 을 누르면 명령 창을 부를수있다. 그 후에 git clone을 치면 레포지토리를 복사하려고 자동으로 github연결 창이 뜨게 된다. ps. 혹시 자신이 로그아웃을 했거나, 레포지토리를 잘못 설정했다면 >git initialize repository 이렇게 입력하면 초기화가 된다 2. 로그인 후에 레포지토리에 5000개의 변경사항이 뜰때. 이 경우가 나타나는 이유는 정확히는 모르지만... 나의 경우에는 icloud 폴..