هناك العديد من الأماكن التي نحتاج فيها إلى استخدام القطع في JavaScript، لكن JavaScript لا تحتوي على وظيفة قطع مستقلة أو طريقة لاستخدامها، لذلك نحتاج إلى كتابة وظيفة القطع بأنفسنا لتحقيق هدفنا.
الخيار الأول:
يتم استدعاؤها في وضع النموذج الأولي، أي في شكل obj.trim()، وهذه الطريقة بسيطة ومستخدمة على نطاق واسع ويتم تعريفها على النحو التالي:
<script language="javascript">
/**
* حذف المسافات في كلا الطرفين
*/
String.prototype.trim=function()
{
إرجاع this.replace(/(^s*)|(s*$)/g, ”);
}
/**
* احذف المساحة الموجودة على اليسار
*/
String.prototype.ltrim=function()
{
إرجاع this.replace(/(^s*)/g,");
}
/**
* احذف المساحة على اليمين
*/
String.prototype.rtrim=function()
{
إرجاع this.replace(/(s*$)/g,");
}
</script>
أمثلة الاستخدام هي كما يلي:
<script type="text/javascript">
تنبيه (document.getElementById('abc').value.trim());
تنبيه (document.getElementById('abc').value.ltrim());
تنبيه (document.getElementById('abc').value.rtrim());
</script>
الخيار الثاني:
يتم استدعاؤها في وضع الأداة، أي في شكل القطع (obj)، ويمكن استخدام هذه الطريقة لتلبية احتياجات المعالجة الخاصة، ويتم تعريفها على النحو التالي:
<نوع البرنامج النصي = "نص/جافا سكريبت">
/**
* حذف المسافات في كلا الطرفين
*/
تقليم الوظيفة (شارع)
{
إرجاع str.replace(/(^s*)|(s*$)/g, ");
}
/**
* احذف المساحة الموجودة على اليسار
*/
دالة تريم (شارع)
{
إرجاع str.replace(/(^s*)/g,");
}
/**
* احذف المساحة على اليمين
*/
وظيفةrtrim(شارع)
{
إرجاع str.replace(/(s*$)/g,");
}
</script>
أمثلة الاستخدام هي كما يلي:
<script type="text/javascript">
تنبيه(trim(document.getElementById('abc').value));
تنبيه(ltrim(document.getElementById('abc').value));
تنبيه(rtrim(document.getElementById('abc').value));
</script>