전체 글
-
js 지역변수 전역변수javascript ES5 정리 2020. 9. 22. 15:48
js에서 변수를 선언할 때 a = 1; 이런식으로 선언을 해주면 이것은 전역 변수이다. 하지만 var a = 1; 이렇게 선언을하면 이것은 지역변수가 된다. 위 사진의 결과를 보면 알겠지만 add 함수에서 선언된 a는 전역변수이다 따라서 add 함수를 실행한 다음 console로 a를 출력하면 데이터가 제대로 출력이 된다. 하지만 add2 함수에서 선언된 b는 지역변수이다. 즉 add2함수 내에서만 사용가능한 변수라는 뜻! 따라서 b를 add2함수 밖에서 출력하면 에러가 발생하는 것을 할 수 있다. 함수내 함수 함수안의 함수에서는 부모함수의 지역변수를 사용할 수 있다.
-
js 함수javascript ES5 정리 2020. 9. 22. 14:30
js 함수 js에서 함수를 선언하는 방식은 총 3가지가 있다. 1.정규 표현식 var add = new Function("x,y","return x+y;"); js의 함수는 객체다. 객체를 선언한 후 var 참조변수를 사용하여 이름을 부여해줌 2.편의상 선언 방식 var add2 = function(x,y){ return x+y; } 3.편의상 선언 방식 function add(x,y){ return x+y; } js함수의 매개변수 js함수의 매개변수는 그냥 의미가없다. js의 매개변수는 값을 받는 그릇의 역활을 수행 하지 않는다. js의 funtion이라는 객체에 내부적인 컬렉션이 존재한다(arguments) 다른 언어에서는 함수의 매개변수 갯수에 맞게 함수를 사용해야하는데 위 사진처럼 매개변수를 여러..
-
js ===, !== 연산자javascript ES5 정리 2020. 9. 22. 13:13
js에서의 연산자들은 java나 c와 거의 모두 동일하다 하지만 다른게 하나 있다 === 와 !== 이다. ==는 java에서 데이터값을 비교하는 연산자 이다. js의 ===는 ==와 달리 데이터의 타입 까지 검사하는 연산자이다. 즉 데이터가 같아도 타입이 다르다면 false를 출력한다. 결과를 보면 숫자와 문자의 타입이 다르기때문에 === 가 false가 나온것을 볼 수 있다. 그리고 또 신기한것을 발견했다. js에서는 변수명이 다르더라도 그 값이 같으면 같은 메모리공간에 저장이된다.
-
json 파서를 이용한 파싱javascript ES5 정리 2020. 9. 22. 01:56
공공데이터를 불러오면 다음과 같이 json 데이터가 문자열 형식으로 날라온다. 문자열 형식으로 객체를 생성했기때문에 data.id를 콘솔에 찍어도 데이터값이 제대로 출력되지않는다. 이때 우리는 저 문자열을 객체화 시키기위해 다음과 같이 파싱작업을 해야한다. 어? 그런데 에러가 발생한다. 그 이유는 객체의 키값을 문자열 형식으로 제대로 작성하지않았기때문이다. var data = JSON.parse('{id:"oh",pw:23}'); 수정 var data = JSON.parse('{"id":"oh", "pw":23}'); 다음과 같이 키값을 문자열 형식으로 제대로 기입하면 데이터가 정상적으로 출력이 된다. 하지만 이러한 과정이 너무 귀찮다. 자동으로 키값에 쌍 따옴표를 붙여주는 기능이 있다. JSON의 st..
-
-
js 배열javascript ES5 정리 2020. 9. 22. 00:02
js의 배열 java에서는 배열에 같은 데이터 타입만 담을 수 있다. 하지만 js는 모든 타입이 객체이기때문에 다른 데이터 타입또한 배열에 담을 수 있다. 그리고 배열에 배열까지 담을 수 있다... 대박 위 사진처럼 nums3배열에 nums2배열을 넣고 nums3[3][1]를 출력하면 nums2의 4가 출력되는것을 볼 수 있다. 배열 데이터 삭제 splice메서드를 사용하면 배열의 데이터를 삭제할 수 있다. nums.splice(2)는 2번 부터 뒤의 데이터를 모두 삭제한다는 뜻이고 nums2.splice(2,1)는 2번을 시작으로 첫번째 데이터를 삭제한다는 뜻이다.