मान लीजिए, हमारे पास इस तरह के स्ट्रिंग्स की एक सरणी है -
const arr =[ '.0', '.1', '.2', '.4', '.2.1', '.3', '.4.1', '.5', '.5.1 .5'];
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो ऐसी एक सरणी लेता है। हमारे फ़ंक्शन को सरणी को बढ़ते क्रम में क्रमबद्ध करना चाहिए (जैसा कि एक आम आदमी द्वारा देखा जाता है)।
इसका मतलब है कि '.0' के साथ स्ट्रिंग्स, उसके बाद '.1', उसके बाद '.2', और इसी तरह। इसलिए, सॉर्ट किए जाने के बाद, सरणी इस तरह दिखनी चाहिए -
const आउटपुट =[ '.0', '.1', '.2.1', '.2, '.3', '.4', '.4.1', '.5', '.5.1. 5'];
उदाहरण
इसके लिए कोड होगा -
const arr =[ '.0', '.1', '.2', '.4', '.2.1', '.3', '.4.1', '.5', '.5.1 .5']; स्थिरांक तुलना =(ए, बी) => {अगर (ए ===बी) {वापसी 0}; const aArr =a.split(."), bArr =b.split("."); के लिए (चलो i =0; iparseInt(bArr[i])) {रिटर्न 1}; } अगर (aArr.length bArr.length) {रिटर्न 1}; वापसी 0;};arr.sort(तुलना करें);console.log(arr);
आउटपुट
और कंसोल में आउटपुट होगा -
[ '.0', '.1', '.2', '.2.1', '.3', '.4', '.4.1', '.5', '.5.1.5' ]पूर्व>