المؤلف: Dflying Chen ( http://dflying.cnblogs.com/ )
تعد JavaScript لغة قوية جدًا تعتمد على الكائنات، ولكن لا تزال هناك بعض أوجه القصور في دعمها للغة الموجهة للكائنات. كما أن مكتبة الفصل التي تم إنشاؤها بسيطة نسبيًا بل وتفتقر إلى كل شيء وظائف شائعة الاستخدام. يعمل ASP.NET Atlas على توسيع JavaScript في وقت التشغيل، ويعزز بشكل كبير قدرات الدعم الموجهة للكائنات، ويوسع بعض العمليات شائعة الاستخدام أثناء التطوير.
لقد أشرت إلى ملف Atlas.js وخلصت إلى أن Atlas يحتوي على الامتدادات التالية لجافا سكريبت. هناك بعض النقص أو الخطأ في بعض الأماكن، أرجو أن تسامحوني وتصححوني.
ملحق كائن السلسلة
String String.ltrim()
يزيل كل المسافات في بداية السلسلة الأصلية ويعيد كائن سلسلة جديد.
سلسلة السلسلة.rtrim()
يزيل كافة المسافات في نهاية السلسلة الأصلية ويعيد كائن سلسلة جديد.
سلسلة السلسلة.تريم ()
يزيل كل المسافات في بداية ونهاية السلسلة الأصلية ويعيد كائن سلسلة جديد.
سلسلة منطقية.endsWidth(strEnd)
ما إذا كانت هذه السلسلة تنتهي بالتمرير في السلسلة.
سلسلة منطقية.startsWith(strStart)
ما إذا كانت هذه السلسلة تبدأ بما تم تمريره في String.
سلسلة String.format(args1,args2,.)
على غرار String.Format() في C#، سيتم استبدال {n} في السلسلة التي تم التعامل معها بالمعلمة nth المقابلة وسيتم إرجاع كائن سلسلة جديد.
سلسلة String.removeSpaces()
إزالة كافة المسافات من السلسلة الأصلية وإرجاع كائن سلسلة جديد.
سلسلة String.removeExtraSpaces()
استبدل المسافات المتتالية في السلسلة الأصلية بمسافات مفردة (بما في ذلك أحرف الإرجاع) وقم بإرجاع كائن سلسلة جديد.
سلسلة String.removeSpaceDelimitedString (شارع)
إزالة الكلمات المحددة (أجزاء النص المفصولة بمسافات) من السلسلة الأصلية وإرجاع كائن سلسلة جديد. يمكن استخدام هذه الطريقة عند حذف اسم فئة يحتوي على عناصر DOM بأسماء فئات متعددة.
ملحقات كائنات المصفوفة
تبطل Array.queue(objValue) وArray.add(objValue) باطلة
يقوم بإدراج قيمة objValue المحددة في نهاية هذا الصفيف.
صفيف باطلة.addRange(rangeArray)
أضف rangeArray المحدد إلى نهاية الصفيف.
تحتوي المصفوفة المنطقية على (objValue) والمصفوفة المنطقية (objValue)
تُرجع قيمة منطقية تمثل ما إذا كان الصفيف يحتوي على عنصر objValue.
صفيف Array.clone()
إرجاع نسخة ضحلة من هذه المصفوفة.
Array.insert باطلة (الفهرس، objValue)
أدخل قيمة objValue المحددة في موضع الفهرس الخاص بالمصفوفة.
ObjectArray.dequeue()
يزيل ويعيد الإدخال الأول في هذا المصفوفة.
مصفوفة الكائنات.removeAt(الفهرس)
إزالة وإرجاع الإدخال في الفهرس المحدد في هذه المصفوفة.
المصفوفة المنطقية.إزالة (objValue)
إزالة إدخال objValue المحدد من الصفيف وإرجاع قيمة منطقية تشير إلى ما إذا كان الإدخال موجودًا وتمت إزالته بنجاح.
صفيف Array.parse (سلسلة)
تحليل المصفوفة الواردة الممثلة بسلسلة إلى مصفوفة.
مصفوفة باطلة.واضحة ()
امسح كافة الإدخالات في هذه المصفوفة.
عدد صحيح Array.get_length()
تقوم بإرجاع عدد الإدخالات في هذا المصفوفة، أي ما يعادل Array.length.
كائن Array.getItem (الفهرس)
إرجاع الإدخال في الفهرس المحدد في هذا الصفيف.
امتداد كائن التاريخ
String Date.toFormattedString(stringFormat)
قم بتنسيق كائن التاريخ وإخراجه وفقًا لتنسيق سلسلة الإدخال (هناك عدد كبير جدًا من سلاسل التنسيق... أنا كسول جدًا بحيث لا أستطيع كتابتها. إذا كنت في حاجة إليها، فما عليك سوى إلقاء نظرة على الأسطر 748-871 في Atlas.js).
ملحق رقم الكائن
Number Number.parse(string)
حاول تحليل السلسلة الواردة كرقم.
رقم السلسلة.toFormattedString(stringFormat)
قم بتنسيق كائن الرقم وإخراجه وفقًا لتنسيق سلسلة الإدخال (لا تزال سلسلة التنسيق أكثر من اللازم... كسول جدًا بحيث لا يمكنك كتابتها، إذا كنت في حاجة إليها، فما عليك سوى إلقاء نظرة على الأسطر 935-1024 في Atlas.js).
تشبه
فئة Sys.StringBuilder
فئة StringBuilder في لغة C#:var sb = new Sys.StringBuilder();
sb.append("<div>");
sb.appendLine("سطر من النص");
sb.append("</div>");
someDOMElem.innerHTML = sb.toString();
يحدد الدعم الموجه للكائنات الفئات الأساسية التي يمكن توريثها منها
الفئة الأساسية = الدالة ()
{
// هدف
}
(
"BaseClass
");
{
// استدعاء منشئي القاعدة
// الوسيطة الثانية عبارة عن مصفوفة يمكنك استخدامها لتمرير الوسائط
DerivedClass.intializeBase(this,arguments);
}
DerivedClass.registerClass("DerivedClass"،"BaseClass")؛
متعددة
MultipleInherit= function()
{
MultipleInherit.intializeBase(this,arguments);
// هدف
}
MultipleInherit.registerClass("MultipleInherit",["BaseClass", "DerivedClass"]);
تحديد الأساليب التي يمكن تجاوزها
BaseClass = function()
{
// هدف
this.initialize = وظيفة ()
{
}
BaseClass.registerBaseMethod(this,"initialize");
}
BaseClass.registerClass("BaseClass");
استدعاء الطريقة التي تم تجاوزها للفئة الأساسية
مشتقة فئة = وظيفة ()
{
DerivedClass.initializeBase(this,arguments);
this.initialize = وظيفة ()
{
DerivedClass.getBaseMethod(this،"BaseClass"،"initialize").call(this);
// لتمرير الوسائط إلى الفئة الأساسية:
// .call(هذا,args1,args2,args3)
}
}
DerivedClass.registerClass("DerivedClass",["Atlas.Bindings.Base"،"BaseClass"]);
NamespaceregisterNamespace
("Web.Utility")؛
// تنفيذ أداة الويب
RegisterNamespace("Web.Performance");
// تنفيذ الأداء
حدد نوع التعداد var theEnum = Type.createEnum("name1"،"name2")؛
لـ (var strItems في theEnum.getValues ())
{
}
تحديد نوع العلم
var theFlags = Type.createFlags("name1",value1,"name2",value2,);