జావాస్క్రిప్ట్ నంబర్
- పూర్వ పేజీ JS స్ట్రింగ్ ట్యాంప్లేట్స్
- తదుపరి పేజీ JS బిగ్ ఇంట్
జావాస్క్రిప్ట్లో ఒక మాత్రమే నమ్మబడిన విలువ రకం ఉంది.
నమ్మబడిన విలువలను రాయడంలో చివరి ముద్రలు ఉండకూడదు.
జావాస్క్రిప్ట్ నమ్మబడిన విలువలు
JavaScript విలువలను చివరకు పంక్తి ఉన్నా లేదా లేనా రాయవచ్చు:
ఇన్స్టాన్స్
var x = 3.14; // పంక్తి ఉన్న సంఖ్య var y = 3; // చివరకు పంక్తి లేని సంఖ్య
అత్యంత పెద్ద లేదా చిన్న సంఖ్యలను శాస్త్రాత్మక పంక్తి ద్వారా రాయవచ్చు:
ఇన్స్టాన్స్
var x = 123e5; // 12300000 var y = 123e-5; // 0.00123
JavaScript విలువలు ఎప్పటికీ 64 బిట్స్ ఫ్లోటింగ్ పంక్తి ఉంటాయి
పలు ఇతర ప్రోగ్రామింగ్ భాషలకు విరుద్ధంగా, JavaScript విలువలను వివిధ రకాలుగా నిర్వచించదు, అవి కాకుండా పంక్తి ప్రకారం, చిన్నవి, పెద్దవి, ఫ్లోటింగ్ పంక్తి వివిధంగా ఉంటాయి.
JavaScript విలువలు ఎప్పటికీ డబుల్ ప్రకృతి ఫ్లోటింగ్ పంక్తిలో నిల్వ చేస్తాయి, అంతర్జాతీయ IEEE 754 ప్రమాణాలకు అనుగుణంగా.
ఈ ఫార్మాట్ 64 బిట్స్ తో విలువను నిల్వ చేస్తుంది, అక్కడ 0 నుండి 51 వరకు సంఖ్యలు (ఫ్రాగ్మెంట్), 52 నుండి 62 వరకు ప్రకారాలు మరియు 63 బిట్స్ సిగ్నేచర్ ఉంటాయి:
ఫార్మాట్ (అకా ఫ్రాక్షన్ / మాంటిసిస్) | ప్రకారం | సిగ్నేచర్ |
---|---|---|
52 బిట్స్ (0 - 51) | 11 బిట్స్ (52 - 62) | 1 బిట్ (63) |
ప్రకృతి
పంక్తి ప్రకారం వాడకం లేదా శాస్త్రాత్మక పంక్తి లేదా స్కూలర్ కంటే సంఖ్యలు పరిపూర్ణంగా 15 స్థానాలకు కనిపించబడతాయి.
ఇన్స్టాన్స్
var x = 999999999999999; // x ఉంటుంది 999999999999999 var y = 9999999999999999; // y ఉంటుంది 10000000000000000
చిన్న సంఖ్యల అత్యంత సంఖ్యలు 17 నిమిషాలు ఉంటాయి, కానీ ఫ్లోటింగ్ పంక్తి అలబాత్రిక్స్ ఎప్పటికీ 100% పరిపూర్ణం కాదు:
ఇన్స్టాన్స్
var x = 0.2 + 0.1; // x ఉంటుంది 0.30000000000000004
పైన పేర్కొన్న సమస్యను పరిష్కరించడానికి జోడించడం మరియు భాగంగా వినియోగించడం వాడతారు:
ఇన్స్టాన్స్
var x = (0.2 * 10 + 0.1 * 10) / 10; // x ఉంటుంది 0.3
సంఖ్యలు మరియు స్ట్రింగ్లు జోడించడం
జాగ్రత్త గా !!
JavaScript జోడించడం మరియు కలయిక (concatenation) లకు అదే + ఆపరేటర్ వాడతారు.
సంఖ్యలను జోడించడం వాడతారు. స్ట్రింగ్లను కలయిక చేస్తారు.
మీరు రెండు సంఖ్యలను జోడించినప్పుడు, ఫలితం ఒక సంఖ్య ఉంటుంది:
ఇన్స్టాన్స్
var x = 10; var y = 20; var z = x + y; // z ఉంటుంది 30 (ఒక సంఖ్య)
రెండు స్ట్రింగ్లను జోడించినప్పుడు, ఫలితం ఒక స్ట్రింగ్ కలయిక ఉంటుంది:
ఇన్స్టాన్స్
var x = "10"; var y = "20"; var z = x + y; // z అని 1020 (పదం) అవుతుంది
మీరు ఒక సంఖ్యను మరియు ఒక స్ట్రింగ్ ను జోడించినప్పుడు, ఫలితం కూడా స్ట్రింగ్ కలయిక ఉంటుంది:
ఇన్స్టాన్స్
var x = 10; var y = "20"; var z = x + y; // z ఉంటుంది 1020 (ఒక స్ట్రింగ్)
ఒక పదాన్ని మరియు సంఖ్యను కలపడంలో ఫలితం పదం జతచేయబడుతుంది:
ఇన్స్టాన్స్
var x = "10"; var y = 20; var z = x + y; // z అని 1020 (పదం) అవుతుంది
సాధారణంగా ఫలితం 30 అని భావిస్తారు:
ఇన్స్టాన్స్
var x = 10; var y = 20; var z = "The result is: " + x + y;
సాధారణంగా ఫలితం 102030 అని భావిస్తారు:
ఇన్స్టాన్స్
var x = 10; var y = 20; var z = "30"; var result = x + y + z;
జావాస్క్రిప్ట్ ఎడమ నుండి కుడికి సంకేతింపులను చేస్తుంది.
ఇక్కడ x మరియు y సంఖ్యలు అని ఉన్నందున, 10 + 20 జతచేయబడుతుంది.
ఇక్కడ z పదం అని ఉన్నందున, 30 + "30" జతచేయబడుతుంది.
సంఖ్య పదం
జావాస్క్రిప్ట్ పదాలు సంఖ్యలను కలిగి ఉండవచ్చు:
var x = 100; // x అని సంఖ్య var y = "100"; // y అని పదం
అన్ని సంఖ్య కలిగిన కాలకలిగిన ఆపరేషన్లలో, జావాస్క్రిప్ట్ పదాన్ని సంఖ్యగా మారుస్తుంది:
ఈ ఉదాహరణ ఈ విధంగా పనిచేస్తుంది:
var x = "100"; var y = "10"; var z = x / y; // z అని 10 అవుతుంది
ఈ ఉదాహరణ ఈ విధంగా పనిచేస్తుంది:
var x = "100"; var y = "10"; var z = x * y; // z అని 1000 అవుతుంది
ఈ ఉదాహరణ ఈ విధంగా పనిచేస్తుంది:
var x = "100"; var y = "10"; var z = x - y; // z అని 90 అవుతుంది
ఈ ఉదాహరణ అలాగే పనిచేయదు:
var x = "100"; var y = "10"; var z = x + y; // z అని 110 కాదు (10010 అవుతుంది)
చివరి ఉదాహరణలో, జావాస్క్రిప్ట్ + ఆపరేటర్ ను పదాలను జతచేస్తుంది.
NaN - అసంఖ్యాకం
NaN
జావాస్క్రిప్ట్ అన్యంకం పదం, ఒక సంఖ్య అని సూచిస్తుంది.
ఒక అసంఖ్యాక పదాన్ని విభజించడంలో ఉంటే NaN (Not a Number) అవుతుంది:
ఇన్స్టాన్స్
var x = 100 / "Apple"; // x అని NaN (Not a Number) అవుతుంది
కానీ, ఇక్కడ పదం సంఖ్యగా ఉన్నట్లయితే ఫలితం సంఖ్యగా ఉంటుంది:
ఇన్స్టాన్స్
var x = 100 / "10"; // x అని 10 అవుతుంది
మీరు సమగ్ర జావాస్క్రిప్ట్ ఫంక్షన్ ను ఉపయోగించవచ్చు: isNaN()
ఒక విలువను సంఖ్యగా నిర్ణయించడానికి:
ఇన్స్టాన్స్
var x = 100 / "Apple"; isNaN(x); // సంఖ్య కాదు అని తిరిగిస్తుంది
要小心 NaN
。假如您在数学运算中使用了 NaN
,则结果也将是 NaN
:
ఇన్స్టాన్స్
var x = NaN; var y = 5; var z = x + y; // z 将是 NaN
结果也许是串连接:
ఇన్స్టాన్స్
var x = NaN; var y = "5"; var z = x + y; // z 将是 NaN5
NaN
是数,typeof NaN
返回 number
:
ఇన్స్టాన్స్
typeof NaN; // 返回 "number"
Infinity
Infinity
(或 -Infinity
)是 JavaScript 在计算数时超出最大可能数范围时返回的值。
ఇన్స్టాన్స్
var myNumber = 2; while (myNumber != Infinity) { // 执行直到 Infinity myNumber = myNumber * myNumber; }
除以 0(零)也会生成 Infinity
:
ఇన్స్టాన్స్
var x = 2 / 0; // x 将是 Infinity var y = -2 / 0; // y 将是 -Infinity
Infinity
是数:typeOf Infinity
返回 number
。
ఇన్స్టాన్స్
typeof Infinity; // 返回 "number"
十六进制
JavaScript 会把前缀为 0x
的数值常量解释为十六进制。
ఇన్స్టాన్స్
var x = 0xFF; // x 将是 255。
绝不要用前导零写数字(比如 07)。
一些 JavaScript 版本会把带有前导零的数解释为八进制。
默认地,Javascript 把数显示为十进制小数。
但是您能够使用 toString()
方法把数输出为十六进制、八进制或二进制。
ఇన్స్టాన్స్
var myNumber = 128; myNumber.toString(16); // బయటపడు 80 myNumber.toString(8); // బయటపడు 200 myNumber.toString(2); // బయటపడు 10000000
నంబర్లు కూడా ఆబ్జెక్ట్లు కావచ్చు
సాధారణంగా జావాస్క్రిప్ట్ నంబర్లు లాక్షణిక విలువల ద్వారా సృష్టించబడతాయి: var x = 123
但是也可以通过关键词 new
定义为对象:var y = new Number(123)
ఇన్స్టాన్స్
var x = 123; var y = new Number(123); // typeof x 返回 number // typeof y 返回 object
请不要创建数值对象。这样会拖慢执行速度。
new
关键词使代码复杂化,并产生某些无法预料的结果:
ఉపయోగించినప్పుడు ==
相等运算符时,相等的数看上去相等:
ఇన్స్టాన్స్
var x = 500; var y = new Number(500); // (x == y) 为 true,因为 x 和 y 有相等的值
ఉపయోగించినప్పుడు ===
సమానత్వ ఆపరేటర్ తర్వాత, సమానంగా ఉన్న సంఖ్యలు సమానంగా కనిపించవు ఎందుకంటే ===
ఆపరేటర్స్ రకం మరియు విలువలను ఒకేసారి సమానంగా చేయాలి.
ఇన్స్టాన్స్
var x = 500; var y = new Number(500); // (x === y) కాల్స్ట్ ఫాల్స్, ఎందుకంటే x మరియు y యొక్క రకాలు వ్యత్యాసపడినవి
కాక కూడా చాలా చెడు. ఓబ్జెక్ట్స్ పోలింగ్ చేయలేదు:
ఇన్స్టాన్స్
var x = new Number(500); var y = new Number(500); // (x == y) కాల్స్ట్ ఫాల్స్, ఎందుకంటే ఓబ్జెక్ట్స్ పోలింగ్ చేయలేదు
జావాస్క్రిప్ట్ ఆబ్జెక్ట్స్ పోలింగ్ చేయలేదు.
- పూర్వ పేజీ JS స్ట్రింగ్ ట్యాంప్లేట్స్
- తదుపరి పేజీ JS బిగ్ ఇంట్