การตัด string ในรูปแบบต่างๆ ด้วย JavaScript
1. substring(From,To)
From: คือตำแหน่งเริ่มต้น (สามารถมีค่าติดลบได้ แต่จะถูก convert เป็น 0)
To: คือตำแหน่งสิ้นสุด ถ้าไม่ระบุจะใช้ตำแหน่งของตัวสุดท้าย (สามารถมีค่าติดลบได้ แต่จะถูก convert เป็น 0)
"Hello World".substring(2, 6);
และเรายังสามารถทำแบบนี้ได้อีก
"Hello World".substring(2); => "llo World"
"Hello World".substring(-2); => " Hello World"
"Hello World".substring(2, -2); => "He"
"Hello World".substring(2, 0); => "He"
from กับ to สามารถเป็นค่าติดลบได้แต่จะถูกแปลงค่าเป็น 0 ดังนั้น
substring(-3) == substring(0)
substring(3, -4) == substring(3, 0)
2. substr(From,Length)
From: คือตำแหน่งเริ่มต้น (สามารถมีค่าติดลบได้ แต่จะถูก convert จากสูตร length + ค่าที่ติดลบ)
Length: คือ จำนวนของตัวอักษรที่จะดึง ถ้าไม่ระบุจะยาวถึงตัวสุดท้าย(ถ้าเป็นค่าติดลบจะถูก Convert เป็น 0)
Hello World.substr(2, 3);
และเรายังสามารถทำแบบนี้ได้อีก
"Hello World".substr(3); => " lo World"
"Hello World".substr(-3); => " rld"
"Hello World".substr(3, -3); => ""
"Hello World".substr(3, 0); => ""
3. slice (From,To)
From: คือตำแหน่งเริ่มต้น (สามารถมีค่าติดลบได้ แต่จะถูก convert จากสูตร length+ ค่าที่ติดลบ)
To: คือตำแหน่งสิ้นสุดถ้าไม่ระบุจะใช้ตำแหน่งของตัวสุดท้าย (สามารถมีค่าติดลบได้ แต่จะถูก convert จากสูตร length + ค่าที่ติดลบ)
var stringValue = “Hello World”;
stringValue.slice(3, 7); => “lo W”
stringValue.slice(3); => “lo World”
stringValue.slice(-3); => “rld”
stringValue.slice(3, -4); => “lo W”
หมายเหตุ วิธีการมองค่าติดลบใน slice ก็เหมือนกับการนับตำแหน่งมาจากด้านหลังขึ้นมาข้างหน้าครับ
สรุปผล