let a = 10;
function test(n){
console.log(a + n);
}
class Element {
constructor() {//이런 값이 있는데
this.name = 'Element';
this.display = 'block';
this.fontFamily = 'inherit';
this.margin = 0;
this.padding = 0;
}
print() {// 이렇게 프린트를 할거다
console.log(`
${this.name} =>
display: ${this.display};
font-family: ${this.fontFamily};
margin: ${this.margin};
padding: ${this.padding};
`);
}
}
class Button extends Element {
constructor() {
super();//위의 값들을 가져오는데
//밑에 있는 것 처럼 고칠 것이다.
this.name = 'Button';
this.display = 'inline-block';
this.margin = 5;
}
}
class Input extends Element {
constructor(type = 'text') {
super();
this.name = 'Input';
this.display = 'inline-block';
this.type = type;
}
print() {
console.log(`
Input =>
type: ${this.type};
display: ${this.display};
font-family: ${this.fontFamily};
margin: ${this.margin};
padding: ${this.padding};
`);
}
}
const button = new Button();
button.print();// 프린트 하면 바뀐 값으로 프린트 된다!~~
const input = new Input();
input.print();
class Element{
#thisIsPrivate = true
thisIsPublic = 'hello';
}
#origin
은 private라고 생각하면 된다.반복되는 동작을 미리 만들어서 호출이 되면 동작을 하는 것!
1부터 100까지 배열에 넣는 것
iterator에는 next라는 메소드가 있어야된다!!
리턴할때 done이랑 value를 반환해야된다.
배열 대신 이터레이터를 사용하는 이유??
어라 그냥 for loop 사용하면 되는거 아닌가?
[Symbol.iterator]()
를 사용한다.[Symbol.iterator]()
만 있으면 어디서든 사용할 수 있다.class Nums {
#value;
min;
max;
step;
constructor(min, max, step = 1) {
this.#value = min;
this.min = min;
this.max = max;
this.step = step;
}
next() {
if (this.#value > this.max) {
return { done: true };
}
const value = this.#value
this.#value += this.step;
return {
done: false,
value,
};
}
[Symbol.iterator]() {
return this;
}
}
const nums = new Nums(1, 10, 2);
for (const num of nums) {
console.log(num);
}
와 미쳤다. 내 감자로는 이해가 안된다...
import "module-name"; // 모든 파일 불러오기
//구조분해할당
import {myMember} from "my-module.js"; //
import {foo, bar} from "my-module.js"; //
import * as name from "module-name"; // as라는 키워드를 써서 이름을 name으로 바꿔줌
export default module-name
//클래스의 시작하는 글자는 대문자로 해야된다!(국룰국룰)
class MyClass{
//여러 메서드를 정의할 수 있음
constructor(){...}//기본적인 메소드 - 생성자 / 클래스가 실행될때 자동으로 생성되는 클래스
method1(){...}
method2(){...}
method3(){...}
...
}
const numbers = [1, 2, 3, 4, 5];
for (1 = 0; 1 < numbers. length; 1++) {
console. log(numbers [i]);
const numbers = [1, 2, 3, 4, 5];
numbers.forEach(function(number){
console.log(number);
});
배열.reduce((누적값, 현잿값, 인덱스, 요소) => { return 결과 }, 초기값);
reduce() = https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce