2012-06-20 15 views
9

के बजाय फोर्स int। बल देने के लिए कोई तरीका है .getRange()। GetValues ​​() एक int वापस करने के लिए? हालांकि मेरी सीमा में केवल संख्याएं मौजूद हैं, लेकिन यह उन्हें तारों के रूप में वापस कर रही है। मैं अपने बयान में से प्रत्येक में parseInt का उपयोग करना या परिवर्तित मूल्यों के साथ एक अलग सरणी बनाना से बचना चाहता हूं।Google स्प्रेडशीट स्क्रिप्ट getValues ​​- स्ट्रिंग

या यह एकमात्र समाधान है, सरणी प्राप्त करने के लिए और फिर पूरे सरणी को लूप में पार्स करें?

+0

का सही मान प्रदान करेंगे। यह ठीक (सरल पाश) काम किया, लेकिन मैं थोड़ा तेजी से स्प्रेडशीट बनाना चाहते थे, इसलिए मैं एक बड़े सरणी को पढ़ने के लिए फैसला किया और उसके बाद अलग -1 डी सरणी के रूप में तत्वों बंद बचा लिया। जब मैंने ऐसा किया, तो उनके नए घर ने उन्हें पूर्णांक के रूप में सही ढंग से संग्रहीत किया। तो, समस्या को ठीक करने का यह एक और तरीका है। – user1469541

उत्तर

13

आप उपयोग कर सकते हैं parseInt() या Number()

उदाहरण

var A='12';var B=5 
A+B = 125 
parseInt(A)+B = 17 
Number(A)+B = 17 

जिसके अनुसार, getValues ​​() जब तक मान कुछ जगह या उस में अन्य गैर-न्यूमेरिक वर्ण है तार वापस जाने के लिए नहीं होना चाहिए है ... क्या ये मान मैन्युअल रूप से दर्ज किए गए हैं या कुछ फ़ंक्शन के परिणामस्वरूप आते हैं?

+0

उत्तर – user1469541

+0

के लिए धन्यवाद खाली कोशिकाएं एक शून्य स्ट्रिंग लौटाती हैं। – bmacnaughton

2

getValues ​​() ऑब्जेक्ट्स की 2 डी सरणी देता है - इसलिए ये आपकी स्प्रेडशीट के रूप में स्वरूपित किए गए कार्यों के आधार पर स्ट्रिंग्स, इंटेगर्स या डेट ऑब्जेक्ट्स हैं।

अपनी स्प्रेडशीट पर वापस जाएं और देखें कि जिन कोशिकाओं में पूर्णांक मान हैं, उन्हें स्वरूपित किया गया है। उन्हें पूर्णांक के रूप में प्रारूपित करें और आपको पूर्णांक वापस प्राप्त करना चाहिए।

17

आप आसानी से एकल '+' ऑपरेटर का उपयोग कर के रूप में निम्नानुसार ऐसा कर सकते हैं:

सबसे पहले अपनी स्प्रैडशीट getValue() या getValues() का उपयोग करने से आपके मान मिलता है। मान लें कि आपको दो ऐसे मान मिलते हैं, और उन्हें A = 1 और B = 2 में स्टोर करें। तुम्हें पता है, + के अलावा कोई भी गणित द्विआधारी ऑपरेटर, जो तार संयोजित करता है, तो A - B = -1 का उपयोग करके मजबूर कर सकते हैं उन्हें संख्या के रूप में मान्यता प्राप्त होना है, जबकि A + B वापस आ जाएगी '12'।

आप चर के रूप में व्याख्या किए जा सकने वाले किसी भी चर के साथ + यूनरी ऑपरेटर का उपयोग कर चरों को केवल संख्याओं के लिए मजबूर कर सकते हैं। उदाहरण के लिए, +A + +B मैं एक समारोह है कि सिर्फ एक सरणी पर parseInt() चलाता है और जानकारी में पढ़ने के बाद यह कहेंगे लेखन समाप्त हो गया 3.

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