三、字面量

字面量(literal)是一种固定值的表示方法。也可以叫做常量。

比如:数字、字符串、数组、json对象等类型的数据都有自己的字面量表示法。

字面量就是字面上的意思,看见什么就能认出是什么。

 

1、数字字面量

 

数字字面量指的是常用的数学意义上的数字的表示法。

alert(123);

 

书写时不需要添加任何特殊符号,直接写数字。

 

 

数字:整数、浮点数(小数)、特殊值。

 

①整数字面量

 

整数可以被表示成十进制(基数为10)、八进制(基数为8)以及十六进制(基数为16)。

十进制是最基本的数值字面量格式,可以直接在代码中输入。

八进制字面值必须带前导0、0O0o 。八进制整数只能包括数字0-7。

十六进制的前缀是0x或0X。后面可以包含数字(0-9)和字母a~fA~F

在进行算术计算时,所有八进制和十六进制的数字都会被转换成十进制。

十进制直接书写数字即可,不需要加任何的前缀。

 

//console.log(100);
//console.log(12);
//console.log(-34);

八进制:必须有前缀,每一个位数值取值范围必须是0-7之间。

逢八进一。

//八进制

console.log(0110);
console.log(01);
console.log(010);
console.log(0100);
console.log(01000);
console.log(010000);
console.log(0100000);
console.log(0o77);
console.log(0o25);

八进制的每个位数不能超过7,如果超过了,假如前缀是0,它会强制转成十进制。

console.log(089);

 

如果是以0o/0O开头,超过7的范围,控制台会直接报错:语法错误,有非法字符。

console.log(0o89);

console.log(0O89);

计算:034=8*3+1*4=28

十六进制:逢十六进一。每个位数的取值范围是0-9、a-f(A-F)。

 

console.log(0x2b);  //2*16+1*11=43
console.log(0x5c);  //5*16+1*12=92
console.log(0x56);  //86

 

如果超过规定取值范围,不会转十进制,直接报错。

 

 

console.log(0x4g);

 

所有负的整数,只要在前面加-号就可以

 

 

console.log(-0x30);   //-48

 

②浮点数字面量

书写:整数.小数

浮点数字面量有几种表示方法:

//浮点数字面量
          console.log(3.1415926);
        console.log(0.618);
        console.log(.618);
        console.log(42356.89);
        console.log(0.4235689e5);
        console.log(0.00000056);
        console.log(0.56e-6);

浮点数没有进制的问题,所有的浮点数都是十进制下的数字。

重点记忆:幂的表示法。

③特殊值

有两个:无穷Infinity,NaN

无穷:计算机计算能力有限,如果大于某一个临界点或者小于某一个临界点,计算机没法算出具体的数字,直接输出的是一个正无穷或负无穷。Infinity或者-Infinity。

 //Infinity
        console.log(Infinity);
        console.log(-Infinity);
        console.log(8.6e99489403003455);
        console.log(-8.6e99489403003455);

NaN:not a number,不是一个数。你的这个数字已经没办法用正常的表示法表示法,不是一个正常意义的数字。其实还是一个数字字面量

 //NaN
        console.log(NaN);
        console.log(0/0);
          console.log(12/0);

  

2、字符串字面量

字符串就是人类说的话、词语。各种语言、数字、其他符号等等。

字符串字面值可以包含有零个或多个字符,由双引号对或单引号对儿包围。字符串被限定在同种引号之间;也即,必须是成对单引号或成对双引号。

console.log("我会说English,考试拿第1")
console.log(1);
console.log("1");

在字符串中可以使用一些特殊字符,比如

\n 换行                 

\t Tab制表         

字符串中可以使用转义字符\,

\' 单引号

\ 双引号

\\ 反斜杠

        console.log("恰\t似\n一江春水\n向东流");
        console.log("他说:\"给点money\"");
        console.log("输出\\");