본문 바로가기

프로그래밍 언어

(13)
ES6 관련 정리 ES6(ECMA Script) : 간단히 말해 JavaScript 언어의 표준. ECMA라는 기관이 만든 script언어로 ECMA-262표준을 따른다. 버전 ECMAScript 5 (=ES5) ECMAScript2015(=ES6) -> 중요한 기능들 이 대거 추가됨. ECMAScript 2020 (최신판) javascript module (import, export) 스크립트 크기 증가/ 기능 복잡해지면서 파일을 여러 개로 분리하는 모듈 개념이 등장하였다. 지시자 Import, export를 사용해서 다른 모듈을 불러와 모듈안에 있는 함수를 호출이 가능해지게 되었다. Export는 내보내기 / import는 가져오기 예시 //sayHi.js export function sayHi(user){ Alert..
[자바스크립트]배열 //배열 선언 let arr = new Array(); let fruits = ["사과", "오렌지", "자두"]; alert(fruits.length);//3 //trailing 쉼표 배열의 마지막 요소는 객체와 마찬가지로 쉼표로 끝날 수 있다. pop/push/shift/unshift let fruits = ["사과", "오렌지", "배"]; //pop() //배열 끝 요소를 제거해서 반환한다. alert(fruits.pop());//배 //push() //배열 끝에 요소를 추가한다. fruits.push("포도"); fruits.push("복숭아","망고"); //shift() //배열의 맨 앞 요소를 제거해서 반환한다. alert(fruits.shift());//사과 //unshift() //배열..
문자열 문자열 길이 alert("my\n".length);//3 //length는 함수가 아니라 프로퍼티이기 때문에 ()를 붙이지 않는다. 특정 글자 접근 let str = "Hello"; alert(str[0]);//H alert(str.charAt(0))//H alert(str[100]);//undefined alert(str.charAt(100));//"" 빈문자열 반환 요즘에는 대괄호를 사용하는 방법을 많이 사용한다. charAt은 하위호환성을 위해 남겨둔 상태이다. //for .. of 사용해서 접근하기 for( let char of "Hello" ){ alert(char);//H,e,l,l,o } 부분 문자열 찾기(문자열 위치정보/포함여부) //str.indexOf(substr, pos) //문자열 ..
[자바스크립트]숫자형 e를 이용해 0의 개수가 많은 숫자 입력 let billion = 1e9;//10억 1e3 = 1*1000; 1.23e6 = 1.23*1000000 1e-3 = 1/1000 (=0.001) 16진수, 8진수, 2진수 let num = 255; alert(num.toString(2));//11111111 alert(num.toString(16));//ff //변수가 아닌 실제 숫자에 접근할 경우 alert(123456..toString(16));//..을 쓰거나 ()를 사용한다. alert((123456).toString(16)); 어림수 구하기 //소수점 첫째자리에서 내림 Math.floor() // 소수점 첫째자리에서 올림 Math.ceil(); // 소수점 첫째자리에서 반올림 Math.round();..
객체 복사, 병합과 Object.assign let a = {}; let b = a;//참조에 의한 복사 //a,b 두 변수 모두 같은 객체를 참조한다. 참조하지 않고 별도의 복제 객체를 만들고 싶다면? 아래와 같은 방법으로 복제한다. let test = { name: "jisu", age: 18 }; let clone = {}; for(let key in test){ clone[key] = test[key]; } clone.name= "Jeong"; alert(test.name);//기존 객체의 값은 변경되지 않고 jisu로 나온다. //Object.assign활용하기 let clone = Object.assign({},test); Object.assign()으로 프로퍼티 병합하기 let user = { name : "jisu"}; let mis..
[기본문법]자바스크립트 객체 기본 객체 생성법 let user = new Object();//객체 생성자 문법 let user = {}; //객체 리터럴 문법 중괄호를 이용해 객체를 선언하는 것을 객체 리터럴이라고 부르며, 주로 이 방법을 사용한다. 중괄호 안에는 키와 값의 형태로 쌍으로 구성된 프로퍼티가 들어간다. let user = { name : "Jisu", age : 18 }; //프로퍼티 값 추가하기 user.isAdmin = true; //프로퍼티 삭제 delete user.age; // 여러 단어 조합해 프로퍼티 이름을 만들 경우 큰따옴표 사용하기 let user = { "my hobby":dance } 상수 변수는 값이 수정이 되지 않지만, 상수 객체는 수정이 가능하다. const user = { name: "JIS..
[기본 문법]자바스크립트 화살표 함수 let func = (arg1, arg2, ..argN) => expression let func = function(arg1, arg2, ...argN){ return expression; }; //활용예시1 let sum = (a, b) => a+b; /* let sum = function(a, b){ return a+b; }; */ alert(sum(1,2)); 인자가 여러개일 경우에는 ( ) 생략가능하다. 그러나 인자가 없는 경우 ( )는 적어줘야 한다. //본문이 여러 줄이 화살표 하무 let sum = (a, b) => { let result = a+b; return result; }; alert(sum(1,2)); function ask(question, yes, no){ if (confir..
[기본 문법]자바스크립트 콜백함수 콜백 함수 함수를 함수의 인수로 전달하고, 필요 시 인수로 전달한 그 함수를 나중에 호출하는 것이 콜백함수의 개념. function ask(question, yes, no){ if (confirm(question)) yes() else no(); } function showOk(){ alert("동의하셨습니다."); } function showCancel(){ alert("비동의하셨습니다"); } ask("동의하십니까?",showOk, showOk, showCancel); 익명함수 사용 시 아래와 같이 사용된다. function ask(question, yes, no){ if(confirm(question)) yes() else no(); } ask( "동의하십니까?", function() { alert..