목록JavaScript (59)
진스
객체 생성방법중 하나로 es6때 추가 생성자 함수 이용 // 기존 생성자함수 이용 const User = function (name, age) { this.name = name; this.age = age; this.showName = function(){ //객체안에 메소드가 있음 console.log(this.name); } } const mike = new User("Mike", 27) //생성자 함수명은 첫글자 대문자 Class 이용 // Class 이용 class User2 { constructor(name, age){ //객체를 만들어 주는 생성자 메소드 this.name = name //객체 초기화 값들 this.age= age } showName(){ //class 메소드는 프로토타입에 저..
상속되는 속성과 메소드들은 각 객체가 아니라 객체의 생성자의 prototype이라는 속성에 정의 JavaScript에서는 객체 인스턴스와 프로토타입 간에 연결(많은 브라우저들이 생성자의 prototype 속성에서 파생된 __proto__ 속성으로 객체 인스턴스에 구현)이 구성되며 이 연결을 따라 프로토타입 체인을 타고 올라가며 속성과 메소드를 탐색 //두 사람의 공통부분을 따로 만들고 상위의 prototype이 될부분 const hero = { job: '배우', action() { console.log('촬영중...'); }, signature:'어벤져스' } const ironMan = { actor : '로버트 다우니 주니어', alias: '아이언 맨', family:true, name : '토니..
call, apply, bind 는 함수의 this를 명시적으로 바인딩 할때 사용 call, apply, blind const gangnam = { name:"gangnam" } const jonglo = { name:"jonglo" } function act(come) { console.log(this.name, come); // gangnam 들어가 } act() // "" window.name이 "" 이므로 아래 call로 this를 지정 act.call(gangnam,'들어가') // gangnam 들어가 this를 gangnam객체로 지정 // 함수1개면 this 지정, 2개부턴 함수로 매개변수 전달 function update(count, people) { this.count = count t..
구조분해 할당 (Destructuring assignment) 배열이나 객체 속성을 분해해서 변수에 담을수 있는 표현식 객체 let user = { name: 'mike', age: 30 } let { name:a, age:b } = user //name을 a로 age를 b로 console.log(a, b); //mike 30 배열 //대입 let [a, b, c] = [1, 2] //a==1,b==2,c==undefined //초기값 let [a = 3, b = 4, c = 5] = [1, 2] // a==1, b==2, c==5 //공백 let [user1, , user2] = ['a','b','c','d'] //user1== a, user2== c //쉽게 값바꾸기 let a = 1; let b =..
push() 뒤 삽입 pop() 뒤 삭제 unshift() 앞 삽입 shift() 뒤 삭제 더 편하게 쓰려면 전개구문 아래링크 참고 https://bangj.tistory.com/185 구조분해 할당 , 나머지 매개변수 , 전개구문 구조분해 할당 (Destructuring assignment) 배열이나 객체 속성을 분해해서 변수에 담을수 있는 표현식 객체 let user = { name: 'mike', age: 30 } let { name:a, age:b } = user //name을 a로 age를 b로 cons.. bangj.tistory.com arr.splice(n, m, x) 원본은 특정 요소 지우고, 지워진값은 반환 n:시작, m:개수, x:추가 기본 동작/ 이동 요소 추출 확인하기 let or..
str.indexOf(text) 위치 알려주기 feat) includes 특정요소 찾기 let desc = "19세 이하는 미성년자입니다." desc.indexOf('하') //5 공백도 포함 desc.indexOf('상') //-1 없을시 -1 desc.indexOf('이하') //4 제일 앞글자 위치 반환 //if (desc.indexOf('19')) { //0이면 false가 나와 결과가 제대로 안나옴 if (desc.indexOf('19') > -1) //조건을 -1보다 클경우로 설정 desc.indexOf('19') > -1 console.log('성인이 포함 되었어요'); } else { console.log('없어요'); } if (desc.includes('19')) { //includes..
toStirng() 숫자를 글자로 let num = 10 const ee = num.toString(); //"10" Math.ceil() 올림 let num1 = 11.5 let num2 = 11.3 console.log(Math.ceil(num1),Math.ceil(num2)) //12 12 Math.floor() 내림 let num1 = 11.5 let num2 = 11.3 console.log(Math.floor(num1),Math.floor(num2)) //11 11 Math.round() 반올림 let num1 = 11.5 let num2 = 11.3 console.log(Math.round(num1),Math.round(num2)) //12 11 toFixed() 원하는 자리수 반올림한후 문..
Object.assign() 객체 복제 Object.keys() 키를 배열로 반환 Object.values() 값을 배열로 반환 Object.entries() 키와값을 배열로 반환 Object.fromEntries() 키/값 배열을 객체로 반환 Object.assign() 객체복사1. 바로 대입 해보기 ex) const userClone = user const user={ name:'jin', age:30 } const userClone = user // 이러면 원본까지 수정이 됨 console.log('원본',user) //복사 확인 userClone.age = 40 // 복사본 수정함 console.log('원본',user,'복제본',userClone) //원본,복제본 둘다 age : 40 수정됨 하..