ผู้แต่ง: Dflying Chen ( http://dflying.cnblogs.com/ )
JavaScript เป็นภาษา Object Based ที่ทรงพลังมาก แต่ยังมีข้อบกพร่องบางประการในการรองรับ Object Oriented ฟังก์ชั่นที่ใช้กันทั่วไป ASP.NET Atlas ขยาย JavaScript ณ รันไทม์ เพิ่มความสามารถในการสนับสนุนเชิงวัตถุอย่างมาก และขยายการดำเนินการบางอย่างที่ใช้กันทั่วไปในระหว่างการพัฒนา
ฉันอ้างถึงไฟล์ Atlas.js และสรุปว่า Atlas มีนามสกุลเป็น JavaScript ดังต่อไปนี้ มีการละเว้นหรือผิดพลาดในบางจุด ขออภัยและแก้ไขให้ด้วย
ส่วนขยายวัตถุสตริง
String String.ltrim()
ลบช่องว่างทั้งหมดที่จุดเริ่มต้นของ String ดั้งเดิม และส่งคืนอ็อบเจ็กต์ String ใหม่
สตริง String.rtrim()
ลบช่องว่างทั้งหมดที่ส่วนท้ายของ String ต้นฉบับ และส่งคืนอ็อบเจ็กต์ String ใหม่
สตริง String.trim()
ลบช่องว่างทั้งหมดที่จุดเริ่มต้นและจุดสิ้นสุดของสตริงต้นฉบับ และส่งคืนอ็อบเจ็กต์ String ใหม่
บูลีน String.endsWidth (strEnd)
ไม่ว่า String นี้ลงท้ายด้วยการส่งผ่านใน String หรือไม่
บูลีน String.startsWith (strStart)
ไม่ว่า String นี้เริ่มต้นด้วยการส่งผ่านใน String หรือไม่
สตริง String.format (args1, args2,.)
คล้ายกับ String.Format() ใน C#, {n} ใน String ที่ถูกจัดการจะถูกแทนที่ด้วยพารามิเตอร์ที่ n ที่เกี่ยวข้อง และวัตถุ String ใหม่จะถูกส่งกลับ
สตริง String.removeSpaces()
ลบช่องว่างทั้งหมดออกจากสตริงเดิมและส่งกลับวัตถุสตริงใหม่
สตริง String.removeExtraSpaces()
แทนที่ช่องว่างที่ต่อเนื่องกันในสตริงต้นฉบับด้วยช่องว่างเดียว (รวมถึงการขึ้นบรรทัดใหม่) และส่งคืนวัตถุสตริงใหม่
สตริง String.removeSpaceDelimitedString (str)
ลบคำที่ระบุ (ส่วนของข้อความที่คั่นด้วยช่องว่าง) ออกจากสตริงดั้งเดิมและส่งกลับอ็อบเจ็กต์สตริงใหม่ วิธีการนี้สามารถใช้ในการลบชื่อคลาสที่มีองค์ประกอบ DOM ที่มีชื่อคลาสหลายชื่อ
ส่วนขยายของวัตถุ Array
ถือเป็นโมฆะ Array.queue(objValue) และ void Array.add(objValue)
แทรก objValue ที่ระบุในส่วนท้ายของอาร์เรย์นี้
โมฆะ Array.addRange (rangeArray)
เพิ่ม rangeArray ที่ระบุที่ส่วนท้ายของ Array
Boolean Array.contains(objValue) และ Boolean Array.exists(objValue)
ส่งกลับค่าบูลีนที่แสดงว่าอาร์เรย์มีรายการ objValue หรือไม่
อาร์เรย์ Array.clone()
ส่งกลับสำเนาตื้นของอาร์เรย์นี้
โมฆะ Array.insert (ดัชนี objValue)
แทรก objValue ที่ระบุลงในตำแหน่งดัชนีของ Array
ObjectArray.dequeue()
ลบและส่งกลับรายการแรกในอาร์เรย์นี้
วัตถุ Array.removeAt (ดัชนี)
ลบและส่งกลับรายการที่ดัชนีที่ระบุในอาร์เรย์นี้
อาร์เรย์บูลีน ลบ (objValue)
ลบรายการ objValue ที่ระบุออกจาก Array และส่งคืนค่าบูลีนเพื่อระบุว่ามีรายการอยู่และถูกลบออกสำเร็จแล้ว
อาร์เรย์ Array.parse(สตริง)
แยกอาร์เรย์ขาเข้าที่แสดงด้วยสตริงลงในอาร์เรย์
เป็นโมฆะ Array.clear()
ล้างรายการทั้งหมดในอาร์เรย์นี้
จำนวนเต็ม Array.get_length()
ส่งกลับจำนวนรายการในอาร์เรย์นี้ ซึ่งเทียบเท่ากับ Array.length
วัตถุ Array.getItem (ดัชนี)
ส่งคืนรายการที่ดัชนีที่ระบุในอาร์เรย์นี้
ส่วนขยายของวัตถุวันที่
String Date.toFormattedString (stringFormat)
จัดรูปแบบและส่งออกวัตถุ Date ตามสตริงอินพุต รูปแบบ (มีสตริงรูปแบบมากเกินไป... ฉันขี้เกียจเกินไปที่จะเขียนมัน หากคุณต้องการ เพียงแค่ดูที่บรรทัด 748-871 ใน Atlas.js)
ส่วนขยายของวัตถุ
Number Number Number.parse(string)
ลองแยกสตริงขาเข้าเป็นตัวเลข
สตริง Number.toFormattedString (stringFormat)
จัดรูปแบบและส่งออกวัตถุ Number ตามสตริงอินพุต รูปแบบ (สตริงรูปแบบยังมากเกินไป... ขี้เกียจเกินไปที่จะเขียน หากคุณต้องการ เพียงแค่ดูที่บรรทัด 935-1024 ใน Atlas.js)
คลาส Sys.StringBuilder
คล้ายกับ StringBuilder ใน C#:
var sb = new Sys.StringBuilder();
sb.ผนวก("<div>");
sb.appendLine("บรรทัดข้อความ");
sb.ผนวก("</div>");
someDOMElem.innerHTML = sb.toString();
การสนับสนุนเชิงวัตถุกำหนดคลาสพื้นฐานที่สามารถสืบทอดมาได้
BaseClass = ฟังก์ชัน()
-
// วัตถุ
-
BaseClass.registerClass("BaseClass");
classDerivedClass ที่สืบทอดมา
= function()
-
// เรียกตัวสร้างฐาน
// อาร์กิวเมนต์ที่ 2 คืออาร์เรย์ที่คุณสามารถใช้เพื่อส่งผ่านอาร์กิวเมนต์
DerivedClass.intializeBase (นี่ อาร์กิวเมนต์);
-
DerivedClass.registerClass("DerivedClass", "BaseClass");
หลาย
inheritanceMultipleInherit= function()
-
MultipleInherit.intializeBase (นี่ อาร์กิวเมนต์); // bootstrap
// วัตถุ
-
MultipleInherit.registerClass("MultipleInherit",["BaseClass", "DerivedClass"]);
กำหนดวิธีการที่สามารถแทนที่
BaseClass = function()
-
// วัตถุ
this.initialize = ฟังก์ชั่น ()
-
-
BaseClass.registerBaseMethod(นี่,"เริ่มต้น");
-
BaseClass.registerClass("BaseClass");
เรียกเมธอดแทนที่ของคลาสพื้นฐาน
DerivedClass = ฟังก์ชัน()
-
DerivedClass.initializeBase(นี่ อาร์กิวเมนต์); // bootstrap
this.initialize = ฟังก์ชั่น ()
-
DerivedClass.getBaseMethod(นี่,"BaseClass","เริ่มต้น").call(นี่);
// หากต้องการส่งอาร์กิวเมนต์ไปยังคลาสพื้นฐาน:
// .call(นี่,args1,args2,args3)
-
-
DerivedClass.registerClass("DerivedClass",["Atlas.Bindings.Base","BaseClass"]);
เนมสเปซลงทะเบียนเนมสเปซ
("Web.Utility");
// ใช้งาน Web Utility
registerNamespace("เว็บ.ประสิทธิภาพ");
// ใช้งานประสิทธิภาพ
กำหนดประเภท Enum var theEnum = Type.createEnum("name1","name2");
สำหรับ (var strItems ใน theEnum.getValues())
-
-
กำหนดประเภทธง
var theFlags = Type.createFlags("name1",value1,"name2",value2,);