본문 바로가기

JavaScript/DAY 35 _ 23.10.12

(8)
이런저런 API // 문자관련 : substring, indexOf, length... 정도? { const str = "하이 abc ABCDE3456"; const result = str.substring(10); console.log(result); // 10번째 글자까지 잘라내기. 이후부터 출력됨 const result2 = str.substring(str.indexOf("A")); console.log(result2); // A부터니까. if(str.includes("aBc")){ console.log("포함됨"); }else{ console.log("포함 X"); } } // 숫자관련 : toFixed, parseInt, Number... { const pi = 3.1414926984; console.log(p..
자료구조(list, map) // List const list = []; // 빈배열 (= 초기화 할때도!) list.push("배열1"); list.push("배열2"); list.push("배열2"); list.push("배열3"); list.push("배열3"); list.push("배열4"); for(e of list){ console.log(e); } // MAP -> JSON이랑 약간 섞여있 const map = {}; map["a"] = 10; map["b"] = "b라는키에 이걸 넣겠따"; map["name"] = "name이라는 키에 이걸 넣겟다고" console.log(map["a"]); // 10 console.log(map.a); // 10
Class★ 1. 클래스 선언 class Student{ // 생성자: 클래스를 인스턴스화할 때 호출되는 메서드로, 학생의 이름, 나이, 점수를 초기화합니다. constructor(name, age, score){ this.name = name; this.age = age; this.score = score; } // getter, setter get qqqq(){ console.log("st의 get age"); return this.age; } set qqqq(value){ console.log("st의 set age"); this.age = value; } // 매서드 study(){ console.log(this.name + "가 공부를 한다"); } } const st1 = new Student("한조", ..
Class basic, prototype // basic function test(){ console.log("test 호출됨"); return 1; } console.log(test()); // test 호출됨, 1 const a = new test(); // test 호출됨 console.log(a); // test {} : a가 참조주소를 받는 변수가 됐지? // 문법 // 생성자 : 이것도 대문자로 적 function Student(name, age, score){ this.name = name; this.age = age; this.score = score; // Student클래스 내에 함수를 넣을 수 있다 // this.study = function(){ // console.log(this.name + "이 공부를 한다"); // ..
JSON // JSON : 데이터 교환 형식 // JavaScript 객체와 유사한 데이터 구조를 나타내는 문자열 형식입니다. // JSON은 JavaScript에서 데이터를 표현하고 다른 시스템과 데이터를 교환하는 데 널리 사용됩니다. // 1. JSON.parse(): // --> JSON 문자열을 JavaScript 객체로 변환합니다. const jsonString = '{"name": "Alice", "age": 30}'; const person = JSON.parse(jsonString); console.log(person.name); // "Alice" // 2. JSON.stringify(): // --> JavaScript 객체를 JSON 문자열로 변환합니다. const person2 = { nam..
closure function2 // 비동기식에 대한 이해... // Q. 2초 안녕하세요 2초 안녕하세요 -> 아니야!!!! // 2초 후에 9개가 주르륵 나온다.... for(i = 1 ; i { console.log("왜 2초뒤에 9개가 한번에 찍힐까?"); console.log(i); }, 2000); } console.log("전역변수 i의 값"); console.log(i); // 출력 : 왜 2초뒤에 9개가 한번에 찍힐까?, 10 --> 세트 9개가 한번에 찍힌다.... // Q. 그럼 123..9가 찍히게 하려면 어떻게 해야할까? function test1(a){ // a를 매개변수로 받는 함수를 리턴해보자 return () => { console.log(a); // ..
closure function // 클로저 함수(closure function) // 다른 함수의 내부에서 정의되고 외부 함수의 변수에 접근할 수 있는 함수를 의미합니다. // 클로저는 내부 함수와 그 함수가 정의된 외부 함수 사이의 스코프 체인을 유지하며, // 외부 함수가 실행을 완료한 후에도 외부 함수의 변수에 접근할 수 있습니다. function test1(){ const v1 = 10; const v2 = 20; console.log("test1 호출"); // 익명함수 const subFunc1 = function(){ const v3 = 50; console.log("subFunc1호출됨"); console.log("v3 : " + v3); // ★ 외부 변수를 내부에서 사용하려고 한다 (= 클로저) console.log..
return // Q1. retrun을 2개 이상 넘기고 싶을 때 // --> JS에서는 배열을 사용하면 된다 function test1(a, b){ const result1 = a + b; const result2 = a - b; return [result1, result2]; } // 방법1 --> 자주사용 X const aaa = test1(5, 6); console.log(aaa); console.log(aaa[0]); console.log(aaa[1]); // 방법2 --> 일반적인 방법! 이걸로 쓰세여 const [x, y] = test1(5, 6); console.log([x]); // [11] console.log(x); // 11 console.log(y); // -1 // Q2. return에 함수..