目录
6. Undefined(未定义)的值只有一个,undefined
JavaScript基础
一.JavaScript字面量与变量
字面量:例如:1 2 3 4 5 6 7 8 9 10
一些不可以改变的值,可以直接使用,但是一般不会直接使用字面量。
变量:可以用来保存字面量,而且变量的值是可以任意改变的。变量的声明:通过var 关键字声明。
例如:var num=12;
JavaScript 标识符
在JS中所有的可以由我们自主命名的都可以称为是标识符
例如:变量名 函数名 属性名都属于标识符
命名一个标识符是需要遵守如下规则:
1.标识符中可以含有字母、数字、_(下划线)、$
2.标识符不能以数字开头
3.标识符不能使用ES中的关键字与保留字
4.标识符一般都采用驼峰写法
-首字母小写,每个单词的开头字母大写,其余部分小写
例如:小驼峰 helloWorld 大驼峰HelloWorld
JS底层保存标识符时实际采用的是Unicode编码
所以理论上讲,所有的utf-8中含有的内容都可以作为标识符
(特别注意:其中包括了中文,中文可以作为标识符,但是千万不要这么使用)
var 变量=12312; 不建议这么写
二.JavaScript数据类型
1. JavaScript数据类型
其中基本数据类型:
String 字符串
Number 数值
Boolean 布尔值 true/false
Null 空值 null
Undifined 未定义 undifined
引用数据类型:
Object 对象
2. String 字符串
1.字符串需要使用引号引起来
2.使用单引号或双引号都可以,但是最好不要混用
3.注意引号的嵌套问题
例如:var str=”hello world”
var str=’hello world’
console.log(str);
控制台输出:hello world
var ele="<div class=\"box\"><div>";
console.log(ele);
控制台输出:<div class="box"><div>
\ 作为转义字符(反斜杠)\
在字符串我们可以使用\作为转义字符,当表示一些特殊符号的使用可以使用\进行转义
\" 表示 "
\' 表示 '
\n 表示换行
\t 制表符
var ele=’<div class=”box”><div>’;
console.log(ele);
控制台输出:<div class="box"><div>
3. Number 数值类型
在JS中所有的数值都是Number类型,包括了整数、浮点数(小数)
拓展部分:如果使用Number表示的数字超过了最大值,则会返回一个
Infinity 表示正无穷大
-Infinity 表示负无穷大
使用typeof检查Infinity也会返回Number
Number.MAX_VALUE 表示数值的最大值1.7976931348623157e+308
var a=123.45;
var b="123.45";
console.log(a);
console.log(b);
console.log(typeof a);
console.log(typeof b);
a输出为Number 数值
b输出为String 字符串
可以使用一个运算符 typeof来检查一个变量类型
- 语法:typeof 变量
var max=Number.MAX_VALUE;
console.log(max);
Number.MAX_VALUE的最大值为1.7976931348623157e+308
console.log(max*max);
输出: Infinity 表示正无穷大
console.log(-max*max);
输出:-Infinity 表示负无穷大
var min=Number.MIN_VALUE;
console.log(min);
Number.MIN_VALUE的最小值为5e-324
4. Boolean 布尔类型.
布尔值只有2个,主要用来做逻辑判断
- true 表示真
- false 表示假
例如:var bl=false;
If(bl==true){
alert(123);
}else{
alert(456);
}
输出:456
5. Null(空值)类型的值只有一个,就是null。
null这个值专门用来表示一个空对象
使用typeof检查一个null值时,返回一个object
例如:var btn=document.getElementById("btn");
console.log(typeof btn);
输出:object
6. Undefined(未定义)的值只有一个,undefined
声明一个变量但是未给变量赋值时,它的值就是undefined
例如:var c;
console.log(c);
输出:undefined
三.JavaScript类型转换
1. 强制类型转换
指的是将一个数据类型强制转换为其他的数据类型
类型转换主要指,将其他的数据类型转换为
String 字符串
Number 数值
Boolean 布尔值
2. 将其他的数据类型转换为String类型
方法一:
Number 数值 Boolean 布尔值
1.调用被转换数据类型的toString()方法。
2.该方法不会影响原变量,它会将转换的结果返回
3.注意:null和undefined这两个值没有toString()方法,如果调用该方法程序会报错
方法二:
1.调用String()函数,并将被转换的数据作为参数传递给函数
2.使用String()函数做强制类型转换时,
对于Number Boolean实际上是调用的toString()方法
但是对于null和undefined,就不会调用toString()方法
对于null和undefined,应该调用String()方法
它会将null直接准换为"null"(字符串)
它会将undefined直接准换为"undefined"(字符串)
例如:
var a=123;
var b=a.toString(); 数值类型-》字符串类型
var a=false;
var b=a.toString(); 布尔类型-》字符串类型
a=null/undefined;
b=a.toString();
console.log(typeof a);
console.log(typeof b);
控制台报错
var c=123;
var d=sting(c);
Console.log(typeof c);——》number 数值
Console.log(typeof d);——》string 字符串
var c=123;
var d=sting(c);
var c=null;
var d=string(c);
Console.log(typeof c);——》object 对象
Console.log(typeof d);——》string 字符串
Console.log(c);——》null 空值(字面量)
Console.log(d);——》null空值的字符串
var c=123;
var d=sting(c);
var c=undefined;
var d=string(c);
Console.log(typeof c);——》undefined 未定义
Console.log(typeof d);——》string 字符串
Console.log(c);——》undefined 未定义(字面量)
Console.log(d);——》undefined 未定义的字符串
3. 将其他类型转换为Number
使用Number()函数
1.字符串-->数字
1.如果是纯数字的字符串,则可以直接转换为数字
2.如果字符串中有非数字的内容,则转换为NaN
3.如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
2.布尔值-->数字
true转换为1 false转换为0
- null-->数字 0
- undefined-->数字 NaN
例如:
var num="123";
console.log(typeof num);——》string
var a=Number(num);
console.log(typeof a);——》numder
输出:数值 123
var num="123sdfsdf";
var a=Number(num);
console.log(a);
输出:NaN
Var num=" ";
Var a=Number(num);
console.log(a);
输出:0
var bl=false;
Var bl=Number(bl);
console.log(bl);
输出:0
var c=null;
Var c=Number(c);
console.log(c);
输出:0
var c=undefined;v
var c=Number(c);
console.log(c);
输出:NaN
第二种方式:
这种方式专门用来对付字符串类型
parseInt() 把一个字符串转换为一个整数
parseFloat() 把一个字符串转换为一个浮点数(小数)
1.parseInt()可以将一个字符串中的有效整数内容取出来
然后转换为Number
例如:
var num="123.34px";
num= parseInt(num);
console.log(num);
输出:123
2.parseFloat()与parseInt()类似,但是不同的是它可以获取有效的小数
例如:
var num="123.34px";
num= parseFloat(num);
console.log(num);
输出:123.34
var bl=false;
bl=parseInt(bl);
console.log(bl);
输出:null
4. 将其他类型转换为Boolean
使用Boolean()函数
1.数字 -->布尔 除了0和NaN是false,其余的全部都是true
2.字符串-->布尔 除了空串是false,其余的全部都是true
- null 和undefined都会转换为false
- 对象也会转换为true
总结:除了0和NaN,空串, null 和undefined转换为false之外,其它都是true。
例如:
var a=123.123;
a=Boolean(a);
console.log(a);
输出:true
a=0;
a=Boolean(a);
console.log(a);
输出:false
Console.log(typeof NaN);——》number
a=NaN;
a=Boolean(a);
console.log(a);
输出:false
var str="234df";
str=Boolean(str);
console.log("字符串类型转换为布尔值"+str);
输出:字符串类型转换为布尔值true
var str="";
str=Boolean(str);
console.log("空字符串转换为布尔值"+str);
输出:空字符串转换为布尔值false
var e=undefined;
e=Boolean(e);
console.log(e);
输出:fals