function Person(name ,age ,height ,weight) {
this.name = name.replace(name[0] ,name[0].toUpperCase());
this.age = age;
this.height = height;
this.weight = weight;
this.sayHi = function () {
return "Hi Dear.";
}
this.sayName = function () {
return "My name is: ".concat(name);
}
this.sayBMI = function () {
return (this.weight/(this.height/100)**2).toFixed(2);
}
}
let ali = new Person("ali" ,25 ,180 ,75);
console.log(ali.name.concat(
"\n" ,ali.age
,"\n" ,ali.height
,"\n" ,ali.weight
,"\n" ,ali.sayHi()
,"\n" ,ali.sayName()
,"\n" ,ali.sayBMI()
));
سلام
کلاس شما باید پیچیدگی ها را مخفی کنه پس میتونید به جای اینکه بیرون از کلاس مقادیر را concat کنید برای اینکار یک تابع داخل کلاس بنویسید.
از طرفی این سوال را از خودتون بپرسید که چرا برای نام و سلام کردن تابع نوشتید ولی چرا برای گرفتن سن اینکار را نکردید؟
سوال بعدی: آیا نیازه پروپرتیهای age و ,‘,, به this بایند بشن؟’