JS基础1
- 前端客户端静态页面已经学的差不多了,接下来我要学习javascript基础。
常用书写格式:
- 关键词 标识符 运算符 表达式 分号
标识符
-
命名规范
-
硬性要求
- 可以包含数字、字母、下划线、美元符号(不可以包含其他字符,只有美元符号)
- 不能以数字开头
- 不许使用JS的关键字和保留字
- 严格区分大小写(大小写敏感)
-
软性要求
- 见闻知意
-
-
基本数据类型
- 数值:Number(+,-,*,’/’,’//’,%)
- 整数
- 浮点数
- NaN(Not a Number):是一个值,所有非数值转换为数值转换不了,所以值就为NaN。
- 字符型:String
- 布尔型(boolean):True/False
- null:属于引用数据类型
- Undefined: undefined:变量声明未赋值/打印未声明标识符的类型
- Symbol(对象时讲解)
- 数值:Number(+,-,*,’/’,’//’,%)
-
引用数据类型
-
Object对象
-
数据结构:变量
-
声明变量
-
关键词 标识符 分号
-
ES5和ES6的区别(var/let,const)区别:
- var声明的变量可以重复,let/const声明的变量不能重复
-
ES5的声明方法:
* var F68;
- ES6的声明方法:
- let F68;
- 声明变量
- const F68;
- 声明常量:基础数据类型赋值后不可以再更改(注:基础数据类型)
- 当给一个变量赋值,但未添加关键字,则自动补充关键字为var,不赋值则不会补。
- let F68;
- ES6的声明方法:
-
-
作用域
-
当给一个变量赋值,但未添加关键字,则关键字为var。
-
全局变量和局部变量
let F68 = 1;
{
// ReferenceError: Cannot access ‘F68’ before initialization 先用后声明错误
console.log(F68);
let F68 = 2;
// 如果在局部作用域中,声明了一个全局中的变量,则会无视全局变量,全局变量在此作用域中无效。
}
console.log(F68);
-
全局变量和局部变量练习:
// 1
let F68 = 1;
{
console.log(F68);//1
}
console.log(F68);//1
// 2
let F69 = 2;
{
let F69 = 3;
console.log(F69);//3
}
console.log(F69);//2
// 3
{
let F70 = 4;
console.log(F70);//4
}
console.log(F70);//出错
// 4
// 所有var声明的变量都为全局变量
let F71 = 5;
{
// 这里声明的局部变量,不会补var,共用一个F71的空间,更改了全局变量的值
F71 = 6;
console.log(F71);//5
}
console.log(F71);//5
-
NaN(Not a Number)
-
通过isNaN()判断当前数字是不是一个非数字
console.log(isNaN(NaN));//true
console.log(isNaN(123));//false
console.log(isNaN(‘123’));//false 转换为数字123,前后加空格也可转换,中间加空格不能转换
console.log(isNaN(‘abc’));//true
console.log(isNaN(true));//false 转换为1
console.log(isNaN(undefined));//true 转换为NaN
console.log(isNaN(null));//false 转换为0
-