برنامه نویسی

JS با ایموجی ها بازی می کند! – انجمن DEV

آیا تصویر جلد را می بینید؟ من دیدم که در یک پست، شخصی تعجب کرد که چرا اینطوری می شود که گویی ناگهان یکی از ویژگی های مخفی جاوا اسکریپت را کشف کرده است. اما واقعا آنجا اتفاق افتاده است؟


بیایید کمی با ایموجی ها سرگرم شویم:

const family = '👨‍👩‍👧‍👦'
console.log([...family])
// ['👨', '‍', '👩', '‍', '👧', '‍', '👦']
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

همانطور که می بینید، ما هفت عنصر در آرایه داریم، نه تنها خانواده های عضو. ما چند ایموجی گرفتیم که با کاراکتر صفر با وصال به هم چسبانده شده اند.

console.log(family.includes('👦'))
// do they have a son? returns true!

let familyWithTwoDoughters = family.replace('👦', '👧')
// we get this: 👨‍👩‍👧‍👧
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

خوشبختانه این نه تنها در مورد ایموجی های خانوادگی، بلکه برای بسیاری از ایموجی هایی که ممکن است هرگز استفاده نکنیم نیز صادق است. این هم ایموجی تکنولوژیست (👨‍💻) که از 👨 و 💻 ساخته شده است! پس از جستجوی برخی موارد، این فایل را در Github بررسی کردم:
https://github.com/unicode-org/icu/blob/main/icu4c/source/data/unidata/emoji-zwj-sequences.txt
که شامل لیست طولانی از آنها است.

Emoji ZWJ Sequence ترکیبی از ایموجی های متعدد است که به صورت یک ایموجی در پلتفرم های پشتیبانی شده نمایش داده می شود.

فرمول ترکیب چند ایموجی با استفاده از کاراکتر وصال عرض صفر است:
👨 + ZWJ + 🔬 = 👨‍🔬
🐻 + ZWJ + ❄ = 🐻‍❄️
🐈 + ZWJ + ⬛ = 🐈‍⬛

می توانید در تلگرام یا هر اپلیکیشن دیگری که از آنها پشتیبانی می کند با آنها بازی کنید. آنقدرها هم که بعضی ها فکر می کنند جادویی نیست و ربطی به JS ندارد. ما می توانیم همه این کارها را با استفاده از PHP انجام دهیم و هر زبان برنامه نویسی از رشته ها پشتیبانی می کند:

$family = '👨‍👩‍👧‍👦';
var_dump(mb_str_split($family));
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

متشکرم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا