자바스크립트 객체

16기 김동하·2020년 12월 27일
0

자바스크립트 객체

// const 객체명 = {
// 프로퍼티: 프로퍼티값,
// .
// .
// }

const user = {
age: 20,
name: "kdh",
get_data: function() {
return 10 + "2";
}
}

console.log(user, typeof user);
console.log(user.age, user.name);
console.log(user.get_data(), typeof user.get_data());
user.age= "30";
console.log(user.age, typeof user.age);
console.log("--------------------------");

const emptyObject = {};
emptyObject.name ="kim";
emptyObject.age = 15;
emptyObject.get_data = function() {
return 1 + 2;
}
console.log(emptyObject.age, emptyObject.get_data());
console.log("--------------------------");

const user2 = {
age: 10,
name: "Leo",
details: {
hobby: "coding",
major: "news",
get_hobby: function() {
return this.hobby;
}
//get_hobby: () => "coding"
},
get_name: function() {
return this.name
}
}

console.log(user2.details.get_hobby(), typeof user2.details.get_hobby());
console.log(user2.get_name());

// const user = {
// age: 10,
// name: "Man",
// details: {
// hobby: "code",
// major: "news",
// get_major: () => "news"
// },
// get_name: function() {
// return this.name;
// }
// }

// console.log(user.details.get_major(), typeof user.details.get_major(), user.get_name());

const user3 = {
age: 30,
name: "dave",
get_data: () => 1 + 2
}

console.log(user3.age);
console.log(user3.get_data());

let user4 = {
age: 40,
name: "dave",
get_data: () => user4.age
}

// const user4 = {
// age: 40,
// name: "kdhkdh",
// get_data: function() {
// return this.age;
// }
// }

console.log(user4.name, typeof user4.name);
console.log(user4.get_data());
console.log("-------------------------------");

const user5 = {
age: 35,
name: "dave man",

get get_age() {
return this.age;
},
set set_age(value) {
this.age = value;
}
}

console.log(user5.get_age);
user5.set_age = 20;
console.log(user5.get_age);
console.log("----------------------------------참고");

const user6 = new Object();
user6.age = 10;
user6.name = "inkel";
user6.get_data = function() {
return 15 * 38;
}
console.log(user6.age, user6.name, user6.get_data());
console.log("----------------------------------참고");

function user7(age, name) {
this.age = age;
this.name = name;
this.get_data = function() {
return this.age;
}
}

const dave = new user7(10, "Dave");
console.log(typeof dave);
console.log(dave.age, dave.get_data());
console.log("----------------------------------");

function User(age, name) {
this.age = age;
this.name = name;
}

User.prototype.message = function() {
return "hello";
}
User.prototype.hobby = "coding";

const kim = new User(20, "Kim");
console.log(kim.age, kim.name, kim.hobby);
console.log(kim);
console.log(kim.message());

// const dave = new User(30, "dave");
// console.log(dave.age, dave.name, dave.hobby);
// console.log(dave, dave.message());
console.log("----------------------------------");

// class User1 {
// constructor() {
// this.name = "kdh";
// this.age = "30";
// }
// get_message() {
// return "Hello World!";
// }
// }
// const kdh = new User1();

class User1 {
constructor() {
this.name = "kdh";
this.age = "30";
}
get_message() {
return "Hello~";
}
}
const kdh = new User1();

console.log(kdh);
console.log(kdh.name, typeof kdh);
console.log(kdh.get_message());

// class User1 {
// constructor(name, age) {
// this.name = name;
// this.age = age;
// }
// get_message() {
// return "Hello World!";
// }
// }
// const kdh = new User1("kdh", 30);
console.log("----------------------------------");

class Animal {
constructor(name) {
this.name = name;
}
}

class User2 extends Animal {
constructor(name, age, brand) {
super(name);
this.age = age;
this.brand = brand;
}
}
const cloud = new User2("Cloud", 25, "Funcoding");

console.log(cloud.name, cloud.age, typeof cloud.age);
console.log("----------------------------------");

class Animal1 {
constructor(name) {
this.name = name;
}
get_message() {
return "Hello";
}
}

class User3 extends Animal1 {
constructor(name, age, brand) {
super(name);
this.age = age;
this.brand = brand;
}
get_message() {
return "Hello I am Legand";
}
}
const legand = new User3("Legand", 30, "Codeman");

console.log(legand.name, legand.age, legand.brand, legand.get_message());
console.log("----------------------------------");

class Animal2 {
constructor(name) {
this.name = name;
}
get_message() {
return "Hello";
}
}
Animal2.prototype.age = 50;
const tifa = new Animal2("Tifa");

console.log(tifa.hasOwnProperty("name"));
console.log(tifa.hasOwnProperty("age"));
console.log(tifa.hasOwnProperty("get_message()"));

profile
예비 개발자에서 개발자로!

0개의 댓글