Day 5 JS
ES6和JS什么关系?
- ES就是ECMAScripts,6就是第六个版本.ES是一种标准规范
- 其实现在都有ES10,但是为什么只听说ES6呢?因为其他都是只小版本跟新.而且就算ES6了,但是还是有很多浏览器不支持,只支持ES5,ES6反而在node上用的比较多
JS的书写位置
-
内嵌(可以在body也可以在head)
-
<script type="text/javascript"> alert("JS是解释型语言") </script> -
从上往下执行代码
-
-
外链
-
<script src="" type="text/javascript" charset="utf-8"></script> -
引入其他路径下的JS文件,就是常见的JS文件夹
-
-
调试运行
- 直接到浏览器的控制台运行
语法规则
JS对换行 缩进 空格 分号都不敏感(不严格要求)
- 虽然分号会自动加上,但是最好加上
注释
单行注释//
多行注释/* */
输出
-
弹窗输出alert(尽量少用原生弹框)
-
控制台输出(都可以在F12控制台看到)
- console.log()
- console.error()
- console.warn()
-
弹框输出,带确定取消按钮(尽量少用原生弹框)
- confirm()
- 会返回true或者false,就可以根据这个来写判断if
- confirm()
-
弹框输出,带输入框的,也带确定取消按钮(尽量少用原生弹框)
- promt()
-
前面两种都可以通过var 变量名来赋值给这个变量
项目·将第一个弹框的值和第二个弹框的值相加,并输出在页面上
变量
变量的命名与声明提升
-
字面量:即常量,包括数字和字符串
-
变量:用于保存字面量,并且是可以任意改变的
-
变量的定义和赋值:var a = 777;
- 通过关键字var来声明一个变量
- 关键字是有特殊功能的词语,关键字后面一定要有空格
- 也可以只声明而不赋值:var b;
- 通过关键字var来声明一个变量
-
变量名称的限制
- 必须以$、_、字母这三者开头
- 区分大小写
- 保留字不允许做变量名(可以百度了解)
- 默认的全局变量不能做变量(如window、document等)
- 变量名不能用空格
-
如果没有用var进行赋值,会在全局创建一个变量
- 直接c = 666
- 当然平时肯定是要加上var的,但有时候也是可以用到全局变量的
-
变量名的命名
- 驼峰命名法
- var getNum = 3;
- var getElementName
- 驼峰命名法
-
变量声明的问题
- var c;console.log(c),这个时候会输出undefined
- 而如果直接console.log(sdf),这时候会报错undefined,因为没有声明这个变量
-
变量声明提升
- 我们知道代码是从上往下执行的,但如果是先console.log(e),下一行再写var e的话,是不会报undefined的错误的,
- 因为在解释执行JS之前,会有个预编译的过程,会将变量声明提升到了前面
- 不过如果下一行是 var e = 2333;的话就会报错,因为赋值是不会提升的