当前位置: 首页 > Web前端 > JavaScript

parseInt()函数的奇怪行为

时间:2023-03-26 22:06:42 JavaScript

鏇村鏂囩珷瑙佸叕浼楀彿銆愬墠绔痗ss鍜宩s骞茶揣銆憄arseInt()鏄竴涓狫avaScript鍐呯疆鍑芥暟锛岀敤浜庝粠鏁板瓧瀛楃涓蹭腑瑙f瀽鏁存暟銆備緥濡傦紝璁╂垜浠粠鏁板瓧瀛楃涓?100'涓В鏋愪竴涓暣鏁帮細constnumber=parseInt('100');number;//100姝e棰勬湡鐨勯偅鏍凤紝'100'琚В鏋愪负鏁存暟100銆俻arseInt(numericalString,radix)杩樻帴鍙楃浜屼釜鍙傛暟锛氭暟瀛楀瓧绗︿覆鍙傛暟鎵€鍦ㄧ殑鍩烘暟銆俽adix鍙傛暟鍏佽鎴戜滑瑙f瀽涓嶅悓鏁板瓧鍩烘暟鐨勬暣鏁帮紝鏈€甯歌鐨勬槸2銆?銆?0鍜?6銆傝鎴戜滑浣跨敤parseInt()鏉ヨВ鏋愪竴涓互2涓哄熀鏁扮殑鏁板瓧瀛楃涓诧細constnumber=parseInt('100',2);number;//4parseInt('100',2)灏?100'瑙f瀽涓轰互2涓哄簳鐨勬暣鏁帮細鍥犳瀹冭繑鍥炲€?锛堝崄杩涘埗锛夈€?.parseInt()鐨勪竴涓鎬涓簆arseInt(numericalString)鎬绘槸灏嗗叾绗竴涓弬鏁拌浆鎹负瀛楃涓诧紙濡傛灉瀹冧笉鏄瓧绗︿覆锛夛紝鐒跺悗灏嗚鏁板瓧瀛楃涓茶В鏋愪负鏁存暟鍊笺€傝繖灏辨槸涓轰粈涔堟垜浠彲浠ワ紙浣嗕笉搴旇锛侊級浣跨敤parseInt()鏉ユ彁鍙栨诞鐐规暟鐨勬暣鏁伴儴鍒嗭細parseInt(0.5);//=>0parseInt(0.05);//=>0parseInt(0.005);//=>0parseInt(0.0005);//=>0parseInt(0.00005);//=>0parseInt(0.000005);//=>0鎻愬彇娴偣鏁扮殑鏁存暟閮ㄥ垎锛屽0.5銆?.05绛夛紝缁撴灉涓?銆傝繖涓€鍒囬兘寰堝ソ銆備絾鏄浣曟彁鍙?.0000005鐨勬暣鏁伴儴鍒嗗憿锛焢arseInt(0.0000005);//=>5parseInt()灏嗘诞鐐规暟0.0000005瑙f瀽涓?..5.鏈夎叮涓旀湁鐐规剰澶?..涓轰粈涔坧arseInt(0.0000005)琛ㄧ幇濡傛濂囨€紵2.鎻紑parseInt()鐨勭绉橀潰绾辫鎴戜滑鍐嶇湅鐪媝arseInt(numericalString)瀵瑰畠鐨勭涓€涓弬鏁板仛浜嗕粈涔堬細濡傛灉瀹冧笉鏄竴涓瓧绗︿覆锛屽氨鎶婂畠杞崲鎴愪竴涓瓧绗︿覆锛岃В鏋愬畠锛岀劧鍚庤繑鍥炶В鏋愬悗鐨勬暣鏁般€傝繖鏄涓€涓嚎绱€傜劧鍚庤鎴戜滑灏濊瘯鎵嬪姩灏嗘诞鐐规暟杞崲涓哄瓧绗︿覆琛ㄧず褰㈠紡锛歋tring(0.5);//=>'0.5'瀛楃涓?0.05);//=>'0.05'瀛楃涓?0.005);//=>'0.005'瀛楃涓?0.0005);//=>'0.0005'瀛楃涓?0.00005);//=>'0.00005'瀛楃涓?0.000005);//=>'0.000005'瀛楃涓?0.0000005);//=>'5e-7'鏄惧紡杞崲涓篠tring(0.0000005)鐨勭粨鏋滀笌鍏朵粬娴偣鏁颁笉鍚岋細瀹冩槸鎸囨暟琛ㄧず娉曠殑瀛楃涓诧紒杩欐槸绗簩鏉♀€斺€斾篃鏄竴鏉¢噸瑕佺殑绾跨储锛佸綋鎸囨暟绗﹀彿瀛楃涓茶瑙f瀽涓烘暣鏁版椂锛屾垜浠緱鍒版暟瀛?锛歱arseInt(0.0000005);//=>5//涓巔arseInt(5e-7)鐩稿悓锛?/=>5//涓巔arseInt('5e-7');鐩稿悓//=>5parseInt('5e-7')鍙鐞嗙涓€涓暟瀛?5'锛屼絾蹇界暐'e-7'銆傝皽鍥㈠凡缁忚В寮€锛佸洜涓簆arseInt()鎬绘槸灏嗗叾绗竴涓弬鏁拌浆鎹负瀛楃涓诧紝鎵€浠ュ皬浜?0-6鐨勬诞鐐规暟浠ユ寚鏁拌〃绀烘硶鍐欏叆銆傜劧鍚巔arseInt()浠庢诞鐐规暟鐨勬寚鏁扮鍙蜂腑鎻愬彇鏁存暟銆備綔涓烘梺娉紝涓轰簡瀹夊叏鍦版彁鍙栨诞鐐规暟鐨勬暣鏁伴儴鍒嗭紝寤鸿浣跨敤Math.floor()鍑芥暟锛歁ath.floor(0.5);//=>0Math.floor(0.05);//=>0Math.floor(0.005);//=>0Math.floor(0.0005);//=>0Math.floor(0.00005);//=>0Math.floor(0.000005);//=>0Math.floor(0.0000005);//=>03銆傛€荤粨parseInt()鏄竴涓皢鏁板瓧瀛楃涓茶В鏋愪负鏁存暟鐨勫嚱鏁般€傚皾璇曚娇鐢╬arseInt()鎻愬彇娴偣鏁扮殑鏁存暟閮ㄥ垎鏃跺繀椤诲皬蹇冦€傚皬浜?0-6鐨勬诞鐐规暟杞崲鎴愭寚鏁拌〃绀烘硶鐨勫瓧绗︿覆锛堟瘮濡?e-7灏辨槸0.0000005鐨勬寚鏁拌〃绀烘硶锛夛紝鍙浆鎹㈡暟瀛楅儴鍒嗭紝杩欏氨鏄痯arseInt杞崲灏忔诞鐐规暟鐨勫師鍥?)瀵艰嚧鎰忓缁撴灉鐨勫師鍥犮€備晶闈㈡寫鎴橈細浣犺兘瑙i噴涓轰粈涔坧arseInt(9999999999999999999999)绛変簬1鍚楋紵浣滆€咃細DmitriPavlutin璇戣€咃細鍓嶇css鍜宩s骞茶揣鏉ユ簮锛歞mitripavlutin鏈€鍚庯紝濡傛灉鍠滄鎴戠殑鍒嗕韩锛岀粰鎴戠偣涓禐馃憤鎴栬€呭叧娉ㄢ灂鏄鎴戞渶澶х殑鏀寔锛屽叧娉ㄦ垜锛堝墠绔痗ss鍜宩s骞茶揣锛夎揣锛夛紝鍏紬鍙凤紝鍥炲銆愬姞缇ゃ€戯紝杩涚兢璺熷ぇ浣氦娴佸墠绔粡楠岋紒