2015-10-23 4 views
24

$("#id").val.length और $("#id").val().length के बीच क्या अंतर है?jQuery में val.length और val() लंबाई के बीच अंतर?

जब मैं $("#id").val.length लिखता हूं तो आउटपुट 1 और $("#id").val().length है तो आउटपुट लिखित वर्णों की लंबाई है।

स्पष्टीकरण क्या है?

+0

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/length: यह सिर्फ '($ .fn.val) है। लम्बाई – Bergi

+0

कृपया इसका उपयोग न करें [टैग: jquery-validate] टैग जब प्रश्न jQuery सत्यापन प्लगइन के साथ बिल्कुल कुछ नहीं करने के लिए है। संपादित। – Sparky

उत्तर

51

$("#id").val रिटर्न val रूप val और length of a function is the number of parameters the function is expecting के समारोह परिभाषा (मान सेट करने के सेटर) लंबाई 1 है, जबकि val() समारोह आह्वान और दिए गए मान और length मिल जाएगा पर यह वापस आ जाएगी एक पैरामीटर लेता है मूल्य में वर्णों की संख्या।

सही उपयोग $(selector).val().length

मैं भी VanillaJS के trim या jQuery के $.trimval() पर length जाँच प्रमुख और पीछे वाले स्पेस को दूर करने से पहले उपयोग करने के लिए सिफारिश करेंगे है।

+12

'फ़ंक्शन की लंबाई फ़ंक्शन की अपेक्षा करने वाले पैरामीटर की संख्या है' बहुत अच्छा! वह नहीं जानता था। (और हाँ, इसका परीक्षण किया है)। कोशिश करें '(फ़ंक्शन टेस्ट (एक, दो) {})। लंबाई ' – AmmarCSE

1
$("#id").val आप समारोह (स्रोत कोड) हो और $("#id").val() के साथ इस समारोह को फोन किया और निष्पादित किया जाएगा साथ

केस 1::

$("#id").val.length 

यहाँ .val .val() के लिए विधि परिभाषा लौट

8

हम दोनों कोड पर एक नजर है। और उसके साथ .length रिटर्न अधिकतम तर्क तरीकों की संख्या को स्वीकार करता है

केस 2 (.toggleClass() के लिए उदाहरण 2 के लिए):

$("#id").val().length 

यहाँ .val() रिटर्न स्ट्रिंग में डोम वस्तु की विधि मूल्यांकन परिणाम यानी मूल्य प्रारूप और। लम्बाई लंबाई लंबाई स्ट्रिंग मान लौटाता है।

सही तरीका:

केस 2 लंबाई के साथ .val() का उपयोग कर के रूप में यह यह करने के लिए जुड़े तत्व का मान की लंबाई रिटर्न का सही तरीका है।

+1

' विधि की संख्या की संख्या 1 है, इसके साथ लम्बाई इसके साथ लौटाती है। 'यह सही नहीं है। * विधि के पैरामीटर * की संख्या * 1' की गणना है। – Agop

+0

@Agop: yup। उत्तर अद्यतन किया। –

संबंधित मुद्दे