JavaScript هي لغة ديناميكية ، يمكنك إضافة سمات إلى الكائنات في وقت التشغيل ، أو يمكنك حذف السمات إلى الكائنات.
نسخة الكود كما يلي:
<html>
<head>
<script type = "text/javaScript">
/*
// 01. الطريقة الأولى لتحديد كائن
var object = new Object () ؛
التنبيه (object.username) ؛
//01.1 إضافة اسم المستخدم السمة
كائن ["اسم المستخدم"] = "liujianglong" ؛
//object.username="liujl "؛
التنبيه (object.username) ؛
//01.2 حذف اسم المستخدم السمة
حذف كائن
التنبيه (object.username) ؛
*/
// 02. الطريقة الثانية لتحديد الكائنات - الطريقة الأكثر شيوعًا لتحديد الكائنات في JavaScript
var object = {name: "Zhangsan" ، العمر: 10 ، الجنس: "fale"} ؛
التنبيه (object.name) ؛
التنبيه (object.age) ؛
التنبيه (object.sex) ؛
</script>
</head>
<body>
</body>
</html>
اسم الخاصية: اسم الطريقة موافق أيضًا. لأن الوظيفة نفسها كائن
فرز مجموعة JavaScript
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
صفيف var = [1،3،25] ؛
////////////////////////////////////////
var مقارنة = function (num1 ، num2) {
var temp1 = parseint (num1) ؛
var temp2 = parseint (num2) ؛
if (temp1 <temp2) {
العودة -1 ؛
} آخر إذا (temp1 == temp2) {
العودة 0 ؛
}آخر{
العودة 1 ؛
}
}
//array.sort(compare) ؛//01. اسم الوظيفة هو مرجع كائن
//////////////////////////////////////
// 02. وظيفة مجهولة طريقة////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Array.sort (الوظيفة C (num1 ، num2) {
var temp1 = parseint (num1) ؛
var temp2 = parseint (num2) ؛
if (temp1 <temp2) {
العودة -1 ؛
} آخر إذا (temp1 == temp2) {
العودة 0 ؛
}آخر{
العودة 1 ؛
}
}) ؛
////////////////////////////////////////
تنبيه (صفيف) ؛
</script>
</head>
<body>
</body>
</html>
عدة طرق لتحديد الكائنات في JavaScript (لا تحتوي JavaScript على مفهوم الفئات ، الكائنات فقط)
الطريقة الأولى: توسيع خصائصها وطرقها بناءً على الكائنات الموجودة
نسخة الكود كما يلي:
<script type = "text/javaScript">
// 01. قم بتوسيع خصائصها وطرقها بناءً على الكائنات الموجودة
var object = new Object () ؛
Object.userName = "Zhangsan" ؛
object.sayname = function (name) {
this.username = name ؛
تنبيه (this.username) ؛
}
التنبيه (object.username) ؛
Object.SayName ("Lisi") ؛
التنبيه (object.username) ؛
</script>
تحتوي هذه الطريقة على قيود لأن JavaScript ليس لديها مفهوم الطبقة مثل Java. إذا قمت بكتابة فصل ، فيمكن أن تحصل على كائن مع هذه الخصائص والأساليب.
في هذا الوقت ، إذا كنت ترغب في الحصول على كائن 2 ، فيمكنك فقط كتابة نسخة أخرى من الرمز المذكور أعلاه ، وهو أمر غير جيد جدًا.
الطريقة الثانية: طريقة المصنع
على غرار أساليب المصنع الثابت في جافا.
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
// طريقة مصنع الكائن
var createObject = function () {
var object = new Object () ؛
Object.userName = "Zhangsan" ؛
Object.Password = "123" ؛
object.get = function () {
التنبيه (this.username+"،"+object.password) ؛
}
كائن إرجاع ؛
}
var obj1 = createObject () ؛
var obj2 = createObject () ؛
obj1.get () ؛
// تعديل كلمة مرور الكائن 2
OBJ2 ["كلمة المرور"] = "123456" ؛
obj2.get () ؛
</script>
</head>
<body>
</body>
</html>
هناك عيوب في إنشاء كائنات في الطريقة المذكورة أعلاه (كل كائن له طريقة GET ، والتي تهدف إلى الذاكرة) ، وطريقة المصنع المحسنة (جميع الكائنات تشترك في طريقة الحصول على):
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
// احصل على طريقة مشاركة جميع الكائنات
var get = function () {
ALERT (this.username+"،"+this.password) ؛
}
// طريقة مصنع الكائن
var createObject = function (اسم المستخدم ، كلمة المرور) {
var object = new Object () ؛
Object.userName = اسم المستخدم ؛
object.password = password ؛
object.get = get ؛ // ملاحظة: لا تتم كتابة قوسين الأسلوب هنا
كائن إرجاع ؛
}
// إنشاء كائن من خلال طريقة المصنع
var object1 = createObject ("Zhangsan" ، "123") ؛
var object2 = createObject ("lisi" ، "345") ؛
// استدعاء طريقة الحصول
Object1.get () ؛
Object2.get () ؛
</script>
</head>
<body>
</body>
</html>
الطريقة الثالثة: تحديد كائن بواسطة مُنشئ
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
var get = function () {
ALERT (this.username+"،"+this.password) ؛
}
وظيفة الشخص (اسم المستخدم ، كلمة المرور) {
// قبل تنفيذ السطر الأول من التعليمات البرمجية ، سيقوم محرك JS بإنشاء كائن لنا
this.username = اسم المستخدم ؛
this.password = كلمة المرور ؛
this.get = get ؛
// هنا ، هناك عبارة عودة خفية تستخدم لإرجاع الكائن الذي تم إنشاؤه مسبقًا [هذا يختلف عن نمط المصنع]
}
var person = شخص جديد ("Zhangsan" ، "123") ؛
person.get () ؛
</script>
</head>
<body>
</body>
</html>
الطريقة الرابعة: إنشاء كائن في طريقة النموذج الأولي
النموذج الأولي هو خاصية في كائن كائن ، ويمكن أن يكون لجميع كائنات الشخص أيضًا النموذج الأولي للممتلكات.
يمكنك إضافة بعض الخصائص والأساليب إلى النموذج الأولي للكائن.
عيوب استخدام النماذج الأولية ببساطة لإنشاء كائنات: ① لا يمكن تمرير المعلمات ، يمكنك فقط تغيير القيمة بعد إنشاء الكائن
قد تحدث أخطاء برمجة
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
وظيفة person () {
}
person.prototype.username = "Zhangsan" ؛
person.prototype.password = "123" ؛
person.prototype.getInfo = function () {
ALERT (this.username+"،"+this.password) ؛
}
var person1 = new person () ؛
var person2 = شخص جديد () ؛
person1.username = "lisi" ؛
person1.getInfo () ؛
person2.getInfo () ؛
</script>
</head>
<body>
</body>
</html>
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
وظيفة person () {
}
person.prototype.username = new array () ؛
person.prototype.password = "123" ؛
person.prototype.getInfo = function () {
ALERT (this.username+"،"+this.password) ؛
}
var person1 = new person () ؛
var person2 = شخص جديد () ؛
person1.username.push ("Wanglaowu") ؛
person1.username.push ("Wanglaowu2") ؛
person2.password = "456" ؛
person1.getInfo () ؛
person2.getInfo () ؛
</script>
</head>
<body>
</body>
</html>
بمجرد تحديد كائن باستخدام النموذج الأولي ، لم يعد بإمكانك تعيين القيم الأولية للسمات في المنشئ ، ويمكنك فقط تغيير قيم السمة بعد إنشاء الكائن.
الطريقة الخامسة: استخدم النموذج الأولي + مُنشئ لتحديد الكائن -------------------
لا تتداخل الخصائص بين الكائنات مع بعضها البعض
شارك نفس الطريقة بين الكائنات
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
// استخدم طريقة النموذج الأولي + المُنشئ لتحديد الكائن
وظيفة person () {
// تعريف السمة في المنشئ
this.userName = new array () ؛
this.password = "123" ؛
}
// يتم تعريف الطريقة في النموذج الأولي
person.prototype.getInfo = function () {
ALERT (this.username+"،"+this.password) ؛
}
var p1 = شخص جديد () ؛
var p2 = شخص جديد () ؛
p1.username.push ("Zhangsan") ؛
p2.UserName.push ("Lisi") ؛
p1.getInfo () ؛
p2.getInfo () ؛
</script>
</head>
<body>
</body>
</html>
الطريقة السادسة: طريقة النموذج الأولي الديناميكي -------- الاستخدام الموصى به
في المُنشئ ، تشترك جميع الكائنات في طريقة من خلال كمية العلم ، ولكل كائن سماته الخاصة.
نسخة الكود كما يلي:
<! doctype html>
<html>
<head>
<script type = "text/javaScript">
var person = function (اسم المستخدم ، كلمة المرور) {
this.username = اسم المستخدم ؛
this.password = كلمة المرور ؛
if (typeof person.flag == "undefined") {
تنبيه ("استدعاء") ؛
person.prototype.getInfo = function () {
ALERT (this.username+"،"+this.password) ؛
}
person.flag = true ؛
}
}
var p1 = شخص جديد ("Zhangsan" ، "123") ؛
var p2 = شخص جديد ("Lisi" ، "456") ؛
p1.getInfo () ؛
p2.getInfo () ؛
</script>
</head>
<body>
</body>
</html>