JavaScript .05
15293 ワード
004.オブジェクトとメソッド
複数の関連関数を組み合わせたい場合(=オブジェクト)
オブジェクトのpropertyは任意のデータ型を格納できるため、関数をproperty値として格納できます.
let greetings = { // sayHello, sayHi, sayBye : 세가지의 메소드
sayHello: function() { // sayHello(프로퍼티네임) = 함수이름대신사용
console.log("hello!");
},
sayHi: function() {
console.log("hi!");
},
sayBye: function() {
console.log("BYE");
}
};
greetings.sayHello(); //"hello!"
// 파라미터 사용시
let greetings = { // sayHello, sayHi, sayBye : 세가지의 메소드
sayHello: function(name) { // sayHello(프로퍼티네임) = 함수이름대신사용
console.log(`Hello ${name}!`);
},
sayHi: function() {
console.log("hi!");
},
sayBye: function() {
console.log("BYE");
}
};
greetings.sayHello("JM"); //(=console.log와 모양이 비슷 콘솔이라는 객체의 로고 메소드)
greetings["sayHello"]("JM"); //대괄호표기법 : [프로퍼티에 먼저접근](메소드 호출)
メソッドは、他の関数の名前を繰り返すことを回避します.
オブジェクトに集中して関数のアクションセクションを作成できます
使用時にオブジェクトのユニークな動作に分割することもできますので、より意味のあるコードとして使用できます.
let rectAngle = {
width: 30,
height: 50,
getArea: function() {
return rectAngle.width * rectAngle.height;
}
}
let triAngle = {
width: 15,
height: 40,
getArea : function() {
return triAngle.width * triAngle.height / 2;
}
}
// 메소드를 활용하면 다른 함수의 이름 중복을 피할수 있음
// 좀더 객체에 집중해서 함수의 동작 부분을 작성할 수가 있음
// 사용할때도 객제의 고유한 동작으로 구분할수 있기때문에 좀더 의미있는 코드로 활용가능
例(他の英語単語の出力を削除)
let myVoca = {
// 코드를 작성해 주세요.
addVoca : function(word,meaning) {
myVoca[word] = meaning; // 파라미터로 다른 변수에 담긴값을 가져올때 : [표기법]
},
deleteVoca : function(word){
delete myVoca[word]; //메소드도 프로퍼티기 때문에 꼭 쉼표로 각 프로퍼티를 구분
},
printVoca : function(word) {
console.log(`"${word}"의 뜻은 "${myVoca[word]}"입니다.`);
}
};
// addVoca메소드 테스트 코드
myVoca.addVoca('parameter', '매개 변수');
myVoca.addVoca('element', '요소');
myVoca.addVoca('property', '속성');
console.log(myVoca);
// // deleteVoca메소드 테스트 코드
myVoca.deleteVoca('parameter');
myVoca.deleteVoca('element');
console.log(myVoca);
// // printVoca메소드 테스트 코드
myVoca.printVoca('property');
005. for...複文
オブジェクト内のPropertyを使用した繰返し動作
これは
(특정한 변수 in 반복할 객체) : 객체의 프로퍼티 네임이 변수에 할당 -> 객체에 프로퍼티 개수만큼 반복동작
for(변수 in 객체) {
// (특정한 변수 in 반복할 객체) : 객체의 프로퍼티 네임이 변수에 할당 -> 객체에 프로퍼티 개수만큼 반복동작
동작부분
};
let miinii = {
name : "MIINII",
bornYear : 1800,
insungGood : true,
worst : null,
bestPoint : "미니공주"
}
for (let key in miinii) { //key라는 변수에 miinii의 프로퍼티 개수만큼 반복
console.log(key);
}
for (let key in miinii) { //key라는 변수에 miinii의 프로퍼티 개수만큼 반복
console.log(key); // 네임
console.log(miinii[key]); // 대괄호 : 프로퍼티값(벨류)에도 접근
}
Reference
この問題について(JavaScript .05), 我々は、より多くの情報をここで見つけました https://velog.io/@miinii/JavaScript-.05テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol