السلام عليكم
لدي رابط بهذا الشكل
http s://domain.com/search?q=text1|text2|text2&view=multiple
اريد الحصول على قيم text1 text2 text3 على شكل array
كيف افعل ذلك بالجافاسكريبت او الجيكوري
مرحبا،
الخطوة الأولى هي استخلاص البارامترات من الرابط
نستخدم الكود التالي:
const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString)
const q = urlParams.get('q')
ولكن q لها عدة قيم نستخلصها بالشكل التالي عن طريق دالة split
var myData = q.split('|');
بعدها قيمة المصفوفة myData ستكون بالشكل التالي :
['text1','text2','text3']
تأكد من وضع المفتاح الصحيح عند جلب البيانات باستخدام
urlParams.get('key')
يمكنك استخدام split() method لتقسيم سلسلة باستخدام فاصل معين مثل الفاصل(|) ، والمسافة الفارغة ، وما إلى ذلك. وإذا كان الفاصل عبارة عن سلسلة نصية فارغة سوف يتم تحويل السلسلة النصية إلى مصفوفة من الأحرف.
يوضح المثال التالي كيفية تحويل سلسلة مفصولة بالفواصل (|) وكيف يمكنك تقسيم السلسلة النصية إلى مصفوفة من خلال هذه الفواصل الفاصلة بينها.
var names = 'Harry|John|Clark|Peter|Rohn|Alice';
var nameArr = names.split('|');
console.log(nameArr);
// طرق الوصول إلى عناصر المجموعة باستخدام الفاصل (|)
alert(nameArr[0]); // النتيجة: Harry
alert(nameArr[1]); // النتيجة: John
alert(nameArr[nameArr.length - 1]); // النتيجة: Alice
// طرق الوصول إلى عناصر المجموعة باستخدام الفراغ ()
var str = 'Hello World!';
var chars = str.split('');
console.log();
// Accessing individual values
alert(chars[0]); // النتيجة: H
alert(chars[1]); // النتيجة: e
alert(chars[chars.length - 1]); // النتيجة: !
وعلى هذا يمكنك استخدام عملية الفصل باستخدام الرمز التي تود من خلاله فصل السلسلة النصية.
التعليقات