जवाबों:
मैं उन्हें पहले नंबरों में बदलने के लिए यूनीरी प्लस ऑपरेटर का उपयोग करूंगा।
+num1 + +num2;
ParseFloat के लिए MDN डॉक्स parseInt के लिए
MDN डॉक्स
ParseInt में मूलांक दस के रूप में निर्दिष्ट किया गया है ताकि हम आधार १० में हों। नॉनट्रेक्ट जावास्क्रिप्ट में एक संख्या जो पहले से बताई 0गई है, को ऑक्टल माना जाता है। यह स्पष्ट रूप से समस्याओं का कारण होगा!
parseInt(num1, 10) + parseInt(num2, 10) //base10
parseFloat(num1) + parseFloat(num2)
इसके अलावा एक का उपयोग कर एक उपयोगी शॉर्टकट के लिए ChaosPandion का जवाब देखने के एकल ऑपरेटर । मैंने अलग-अलग व्यवहार दिखाने के लिए एक फिडेल स्थापित किया है।
var ten = '10';
var zero_ten = '010';
var one = '1';
var body = document.getElementsByTagName('body')[0];
Append(parseInt(ten) + parseInt(one));
Append(parseInt(zero_ten) + parseInt(one));
Append(+ten + +one);
Append(+zero_ten + +one);
function Append(text) {
body.appendChild(document.createTextNode(text));
body.appendChild(document.createElement('br'));
}
+num1 + +num2छोटा है, यकीनन अधिक सुरुचिपूर्ण है। मूल रूप से +Number
मैं यूनिरी प्लस ऑपरेटर का उपयोग करने की सलाह दूंगा, जिससे कि कोड के रूप में इलाज किया जा सके एक तात्कालिक स्ट्रिंग के लिए, कोष्ठक के अंदर कोड को निम्नलिखित की तरह अधिक पठनीय बनाने के लिए:
(+varname)
तो, आपके मामले में यह है:
var num1 = '20',
num2 = '30.5';
var sum = (+num1) + (+num2);
// Just to test it
console.log( sum ); // 50.5
तार परिवर्तित floatsसाथ parseFloat(string)या करने के integersसाथparseInt(string)
यदि आपको दो तार एक साथ जोड़ने की आवश्यकता है जो बहुत बड़ी संख्या में हैं तो आपको हर स्ट्रिंग स्थिति में जोड़ का मूल्यांकन करने की आवश्यकता होगी:
function addStrings(str1, str2){
str1a = str1.split('').reverse();
str2a = str2.split('').reverse();
let output = '';
let longer = Math.max(str1.length, str2.length);
let carry = false;
for (let i = 0; i < longer; i++) {
let result
if (str1a[i] && str2a[i]) {
result = parseInt(str1a[i]) + parseInt(str2a[i]);
} else if (str1a[i] && !str2a[i]) {
result = parseInt(str1a[i]);
} else if (!str1a[i] && str2a[i]) {
result = parseInt(str2a[i]);
}
if (carry) {
result += 1;
carry = false;
}
if(result >= 10) {
carry = true;
output += result.toString()[1];
}else {
output += result.toString();
}
}
output = output.split('').reverse().join('');
if(carry) {
output = '1' + output;
}
return output;
}
आप संख्याओं को जोड़ने के लिए इसका उपयोग कर सकते हैं:
var x = +num1 + +num2;
प्रयत्न
var x = parseFloat(num1) + parseFloat(num2) ;
या, अपनी आवश्यकताओं पर निर्भर करता है:
var x = parseInt(num1) + parseInt(num2) ;
http://www.javascripter.net/faq/convert2.htm
आप डगलस क्रॉकफोर्ड की पुस्तक जावास्क्रिप्ट: द गुड पार्ट्स को चुनना चाह सकते हैं । जावास्क्रिप्ट में गोचैस की जगह बहुत बड़ा कोलेज़िटॉन होता है! यह पुस्तक उन्हें स्पष्ट करने की दिशा में एक लंबा रास्ता तय करती है। यह सभी देखें
और मिस्टर क्रॉकफोर्ड का उत्कृष्ट निबंध, जावास्क्रिप्ट: द वर्ल्ड्स मोस्ट मिंडरस्टूड प्रोग्रामिंग लैंग्वेज ।
यदि आप स्ट्रिंग्स के रूप में संख्याओं के साथ ऑपरेशन करना चाहते हैं (जैसा कि उस स्थिति में जहां संख्याएं 64 बिट्स से बड़ी हैं, तो आप बड़े-पूर्णांक लाइब्रेरी का उपयोग कर सकते हैं ।
const bigInt = require('big-integer')
bigInt("999").add("1").toString() // output: "1000"
यहाँ, आपके पास ऐसा करने के लिए दो विकल्प हैं: -
1. आप स्ट्रिंग संख्या को पूर्णांक में बदलने के लिए यूनीरी प्लस का उपयोग कर सकते हैं।
2. आप संख्या को इसी प्रकार में पार्स करके भी इसे प्राप्त कर सकते हैं। यानी parseInt (), parseFloat () आदि
।
अब मैं आपको उदाहरणों की सहायता से यहाँ दिखाने जा रहा हूँ (दो संख्याओं का योग ज्ञात कीजिए)।
यूनीरी प्लस ऑपरेटर का उपयोग करना
<!DOCTYPE html>
<html>
<body>
<H1>Program for sum of two numbers.</H1>
<p id="myId"></p>
<script>
var x = prompt("Please enter the first number.");//prompt will always return string value
var y = prompt("Please enter the second nubmer.");
var z = +x + +y;
document.getElementById("myId").innerHTML ="Sum of "+x+" and "+y+" is "+z;
</script>
</body>
</html>
पार्सिंग दृष्टिकोण का उपयोग करना-
<!DOCTYPE html>
<html>
<body>
<H1>Program for sum of two numbers.</H1>
<p id="myId"></p>
<script>
var x = prompt("Please enter the first number.");
var y = prompt("Please enter the second number.");
var z = parseInt(x) + parseInt(y);
document.getElementById("myId").innerHTML ="Sum of "+x+" and "+y+" is "+z;
</script>
</body>
</html>
आप parseIntएक स्ट्रिंग को एक नंबर पर पार्स करने के लिए उपयोग कर सकते हैं । चीजों के सुरक्षित पक्ष पर होने के लिए, हमेशा 10आधार 10 में पार्स करने के लिए दूसरे तर्क के रूप में पास करें ।
num1 = parseInt(num1, 10);
num2 = parseInt(num2, 10);
alert(num1 + num2);
सुनिश्चित करें कि आप अपने अंतिम उत्तर को फ़्लोट के लिए 16 से कम दशमलव स्थानों पर गोल करें क्योंकि जावा स्क्रिप्ट छोटी गाड़ी है।
उदाहरण के लिए 5 - 7.6 = -2.5999999999999996
@ cr05s19xx ने डुप्लिकेट प्रश्न पर सुझाव दिया:
जब संख्या और जोड़ की बात आती है, तो जावास्क्रिप्ट थोड़ा मजाकिया होता है।
निम्नलिखित देते हुए
'20' - '30' = 10; // 10 नंबर '20' + '30' = '2030' के रूप में देता है; // उन्हें स्ट्रिंग के रूप में लौटाता है। document.getElementById से लौटाए गए मान स्ट्रिंग हैं, इसलिए उन सभी (यहां तक कि जो काम करता है) को नंबर या घटाव के साथ आगे बढ़ने से पहले पार्स करना बेहतर है। आपका कोड हो सकता है:
function myFunction() {
var per = parseInt(document.getElementById('input1').value);
var num = parseInt(document.getElementById('input2').value);
var sum = (num / 100) * per;
var output = num - sum;
console.log(output);
document.getElementById('demo').innerHTML = output;
}
function myFunction2() {
var per = parseInt(document.getElementById('input3').value);
var num = parseInt(document.getElementById('input4').value);
var sum = (num / 100) * per;
var output = sum + num;
console.log(output);
document.getElementById('demo1').innerHTML = output;
}
मैं इसे अपनी परियोजना में उपयोग करता हूं। मैं स्ट्रिंग को एक संख्या के रूप में (with_interesst वेरिएबल के रूप में) इलाज के लिए उपयोग करता हूं।
<script>
function computeLoan(){
var amount = document.getElementById('amount').value;
var interest_rate = document.getElementById('interest_rate').value;
var days = document.getElementById('days').value;
var interest = (amount * (interest_rate * .01)) / days;
var payment = ((amount / days) + interest).toFixed(2);
var with_interest = (amount * (interest_rate * .01));
var with_interesst = (+amount * (interest_rate * .01)) + (+amount);
payment = payment.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
document.getElementById('payment').innerHTML = "Target Daily = PHP"+payment;
document.getElementById('with_interesst').innerHTML = "Amount w/Interest = PHP"+with_interesst;
}
</script>
<div name="printchatbox" id="printchatbox">
<form id="Calculate" class="form-horizontal">
<h2>You Can Use This Calculator Before Submit </h2>
<p>Loan Amount: PHP<input id="amount" type="number" min="1" max="1000000" onchange="computeLoan()"></p>
<p>Interest Rate: <input id="interest_rate" type="number" min="0" max="100" value="10" step=".1" onchange="computeLoan()">%</p>
<p>Term<select id="days" type="number" min="1" max="72" step=".1" onchange="computeLoan()">
<option value="40">40 Days</option>
<option value="50">50 Days</option>
<option value="60">60 Days</option>
<option value="70">70 Days</option>
<option value="80">80 Days</option>
<option value="90">90 Days</option>
<option value="100">100 Days</option>
<option value="120">120 Days</option>
</select>
</p>
<h2 id="payment"></h2>
<h2 id ="with_interesst"></h2>
</form>
</div>
आशा करता हूँ की ये काम करेगा
document.getElementById(currentInputChoosen).value -= +-100;
मेरे मामले में काम करता है, यदि आप मेरे जैसी ही समस्या में हैं और उस मामले का कोई हल नहीं ढूंढ सकते हैं और इस SO प्रश्न का पता लगाएं।
थोड़े से ऑफ-टॉपिक के लिए क्षमा करें, लेकिन जैसा कि मुझे पता चला कि यह काम करता है, मुझे लगा कि यह साझा करने के लायक हो सकता है।
पता नहीं कि यह एक गंदा काम है, या वास्तव में कानूनी है।
आप इस तरह का उपयोग कर सकते हैं:
var num1 = '20',
num2 = '30.5';
alert((num1*1) + (num2*1)); //result 50.5
जब अंक 1 में 1 * लागू करें, स्ट्रिंग को एक संख्या में परिवर्तित करें।
यदि अंक 1 में कोई अक्षर या अल्पविराम होता है, तो NaN को 1 से गुणा करता है
अगर num1 शून्य है, num1 0 है
सधन्यवाद!!!
यदि आप सरल जावास्क्रिप्ट कोड की तलाश कर रहे हैं तो यह कोशिश करें और दो इनपुट बॉक्स का उपयोग करें और दो मान से संख्याओं को जोड़ें। यहाँ कोड है।
Enter the first number: <input type="text" id="num1" /><br />
Enter the seccond number: <input type="text" id="num2" /><br />
<input type="button" onclick="call()" value="Add"/>
<script type="text/javascript">
function call(){
var q=parseInt(document.getElementById("num1").value);
var w=parseInt(document.getElementById("num2").value);
var result=q+w;
}
</script>
अधिक जानकारी के लिए कृपया देखें