Heim  >  Artikel  >  Web-Frontend  >  Spezifische Analyse der Datentypkonvertierung in JavaScript

Spezifische Analyse der Datentypkonvertierung in JavaScript

黄舟
黄舟Original
2017-08-08 13:50:071358Durchsuche


JavaScript-Datentypkonvertierung

Anzeigekonvertierung

Es gibt drei Funktionen, die kann einen String in einen numerischen Wert umwandeln: Number(), parseInt(), parseFloat(). Number() kann für jeden Datentyp verwendet werden, während die anderen beiden Funktionen speziell zum Konvertieren von Zeichenfolgen in Zahlen verwendet werden.

1)Number()

Wenn es sich bei der Zeichenfolge um eine numerische Zeichenfolge handelt, konvertieren Sie sie in einen Dezimalwert.

Wenn die Zeichenfolge ein gültiges Hexadezimalformat enthält, z. B. „0xf“, konvertieren Sie sie in einen dezimalen Ganzzahlwert derselben Größe.

Wenn die Zeichenfolge eine leere Zeichenfolge oder eine Leerzeichenfolge ist, konvertieren Sie sie in 0.

Wenn die Zeichenfolge andere Zeichen als die im oben genannten Format enthält, konvertieren Sie sie in NaN.

2) parseInt(): Gibt eine Ganzzahl zurück

Wenn die parseInt()-Funktion einen String konvertiert, geht es eher darum, ob er dem numerischen Muster entspricht. Es ignoriert führende Leerzeichen in der Zeichenfolge, bis das erste Nicht-Leerzeichen gefunden wird. Wenn das erste Zeichen kein numerisches Zeichen oder ein negatives Vorzeichen ist, gibt parseInt() NaN zurück. Wenn es sich um eine leere Zeichenfolge handelt, wird NaN zurückgegeben. Wenn das erste Zeichen ein numerisches Zeichen ist, analysiert parseInt() das zweite Zeichen weiter, bis alle nachfolgenden Zeichen analysiert wurden oder ein nicht numerisches Zeichen gefunden wird.

3) parseFloat(): Gibt eine Gleitkommazahl zurück

parseFloat() kann Dezimalzahlen zurückgeben. Wenn parseFloat () konvertiert, analysiert es auch jedes Zeichen vom ersten Zeichen bis zum Ende der Zeichenfolge oder bis es auf ein ungültiges numerisches Gleitkommazeichen trifft, d. h. das erste Zeichen in der Zeichenfolge Der Dezimalpunkt ist gültig, aber der zweite Dezimalpunkt ist ungültig.

4) toString(): Andere Typen –> String

Dezimal in Binär umwandeln

Beispiel:

var a = 302;
console.log(a.toString(2));
toString( )<括号里面的数字是几就转换成几进制>

Andere Variablentypen konvertieren Zum Konvertieren in einen String verwenden wir normalerweise die Methode toString(). Numerische Werte, boolesche Werte, Objekte und Zeichenfolgen verfügen alle über die Methode toString(), null und undefiniert verfügen jedoch nicht über diese Methode. Wir können auch die Konvertierungsfunktion String() verwenden, die jeden Werttyp in einen String umwandeln kann. Wenn toString durch Eingabe der Basis eine Zeichenfolge im Binär-, Oktal-, Hexadezimal- oder sogar anderen gültigen Basisformat darstellen kann.

Zum Beispiel:

console.log(a.toString()); // "123"
console.log(bool.toString()); // "true"

5)toFixed(n): Behalten Sie n Dezimalstellen bei (Ausgabetyp: Zeichenfolge)

var pi = 0.45;   //0.95对toFixed有疑问为0.9
alert(Math.round(pi));  //round四舍五入取整
alert(pi.toFixed(1));   // 四舍五入为指定小数位数的数字。

Ausgabetyp: Zeichenfolge

解释:

toFixed它是一个四舍六入五成双的诡异的方法,"四舍六入五成双"含义:对于位数很多的近似数,当有效位数确定后,其后面多余的数字应该舍去,只保留有效数字最末一位,这种修约(舍入)规则是“四舍六入五成双”,也即“4舍6入5凑偶”这里“四”是指≤4 时舍去,"六"是指≥6时进上,"五"指的是根据5后面的数字来定,当5后有数时,舍5入1;当5后无有效数字时,需要分两种情况来讲:①5前为奇数,舍5不进;②5前为偶数,舍5入1。

兼容:

var a = "070";
alert(typeof parseInt(a));
alert(parseInt(a));
IE6-7-8:56(八进制计算)

谷歌正常 70;

处理兼容:(a, 10),强制几进制输出!

隐式转换

隐式转换的方式可以通过+""、* 1、/ 1的运算来把数值转换成字符串。(可相互)

数字——字符串: 数字 +(连字符)c134592d6ba581d7ba7bec205298eb39

字符串——数字: + - * / %

"123"-0      "123"*0      "123"/0      +"123"     "123"%比前面的数值字符串大的数字;

显式转换是通过函数的形式,将字符串转换成数组的形式,隐式转换则是通过运算符的方式将字符串转换成数字的形式。

总结:

显示转换:

1)Number()

2)parseInt():返回整数

3)parseFloat():返回浮点数

4)toString():其它类型—>字符串

5)toFixed(n):保留n位小数(输出类型:string)

隐式转换:

数字转换为字符串:+ ""

var str =  数字 + "";

字符串转数字:

var strs =  + - * / %“数字”;

Das obige ist der detaillierte Inhalt vonSpezifische Analyse der Datentypkonvertierung in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn