मैं जानना चाहता हूं कि उदाहरण के लिए स्ट्रिंग को जांचने का सबसे अच्छा तरीका क्या है (मेल, पासवर्ड .. ईटीसी)।जावास्क्रिप्ट: परीक्षण बनाम exec
/^...$/i.exec(a)
बनाम
/^...$/i.test(a)
- कार्यकारी रिटर्न मूल्य
- परीक्षण सच
परीक्षण:
// 1° way
var mail = req.body.mail;
if(check(mail)){
कार्यकारी:
// 1° way
var mail = req.body.mail;
if(check(mail)){
// 2° way
var mail = check(req.body.mail);
if(mail){
कार्यकारी या परीक्षण? और क्या संख्या (यदि 1 ° या 2 डिग्री कार्यकारी)
समाधान
परीक्षण इस मामले के लिए बेहतर है।
- यह निश्चित रूप से तेज़ होगा।
लेकिन सबसे महत्वपूर्ण
- परीक्षण उसके सभी कार्यों प्रदर्शन करती है। जबकि exec प्रदर्शन नहीं किया, क्योंकि अधिक किया जा सकता है, लेकिन हमें इसकी आवश्यकता नहीं है।
- जैसा कि कहा गया है मैटियास Buelens, isMail() का उपयोग करके यह अधिक तार्किक है: एक ईमेल है: हाँ या नहीं। जबकि exec: एक ईमेल है: ईमेल या शून्य -> wtf? lol
'सर्वश्रेष्ठ तरीका' से आपका क्या मतलब है? – j08691
1। आप जो करने की कोशिश कर रहे हैं उस पर निर्भर करता है। क्या आपको मिलान/कैप्चरिंग समूहों की आवश्यकता है और ऐसे में यह जांचने के लिए मान्य है कि क्या आपकी प्रदत्त स्ट्रिंग रेगेक्स से मेल खाती है या नहीं? इसके अलावा, दूसरा प्रश्न वरीयता आधारित है, इसका एक ही परिणाम होगा। आपको चुनना चाहिए कि आप/आपकी टीम के लिए कौन सा पठनीय और रखरखाव योग्य है। –
दो समाधान हैं, अलग-अलग हैं, इसलिए मुझे लगता है कि उनमें से एक सर्वश्रेष्ठ है ** संपादित करें ** @ Fabrício Matté: बस मान्य करें। हां, मुझे लगता है कि पहला तरीका सबसे अच्छा है क्योंकि अधिक पठनीय उत्तर तर्क है। (आपके लिए;)) –