JavaScript简介
1.JavaScript是一种运行在客户端(浏览器)的编程语言,实现人机交互效果。
2.作用(做什么?)
·网页特效(监听用户的一些行为让网页作出对应的反馈)
·表单验证(针对表单数据的合法性进行判断)
·数据交互(获取后台的数据,渲染到前端)·服务器编程(node.js)
3.组成
ECMAScript:
规定了jS基础语法核心知识。
比如:变量、分支语句、循环语句、对象等等
Web APIs:
DOM 操作文档,比如对页面元素进行移动、大小、添加剧除等操作
BOM 操作浏览器,比如页而弹窗,检测窗口宽度、存储数据到浏览器等等
JavaScript书写位置
1.内部JavaScript
直接写在html文件里,用script标签包住
规范:script标签写在</body>上面
拓展:alert('你好,js)页面弹出警告对话框
注意事项
我们将<script>放在HTML文件的底部附近的原因是浏览器会按照代码在文件中的顺序加载HTML。
如果先加载的vaScript期望修改其下方的HTML,那么它可能由于HTML尚未被加载而失效。
因此,将JavaScript代码放在HTML页面的底部附近通常是最好的策路。
2.外部JavaScript
代码写在以,s结尾的文件里
语法:通过script标签,引入到html页面中。
注意事项
1.script标签中间无需写代码,否则会被忽略!
2.外部avaScript会使代码更加有序,更易于复用,且没有了脚本的混合,HTML也会更加易读,因此这是个好的习惯。
3.内联JavaScript
语法:代码写在标签内部
注意:此处作为了解即可,但是后面Vue框架会用这种模式
单行注释//
多行注释/* 注释 */
结束符
作用:使用英文的;代表语句结束
实际情况:实际开发中,可写可不写,浏览器JavaScript引擎)可以自动推断语句的结束位置
现状:在实际开发中,越来越多的人主张,书写avaScript代码时省路结束符
约定:为了风格统一,结束符要么每句都写,要么每句都不写
JavaScript输入输出语法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>document</title>
</head>
<body>
<script>
document.write('要输出的内容')
</script>
</body>
</html>
输出语法:
语法1:doument.write('要输出的内容‘)
作用:向body内输出内容
注意:如果输出的内容是标签,也会被解析成网页元素
语法2:alert('要输出的内容’)
作用:页面弹出警告对话框
语法3:console.log('控制台打印')
作用:控制台输出语法,程序员调试使用
输入语法:
prompt('请输入你的姓名‘)
作用:显示一个对话框,对话框中包含一条文字信息,用来提示用户输入文字
代码执行顺序:
按HTML文档流顺序执行代码
alert()和prompt()它们会跳过页面渲染先被执行
字面量
数字,数组,字符串字面量...
变量
概念:计算机存储数据的”容器“
注意:变量不是数据本身,它们仅仅是一个用于存储数值的容器。
声明变量
语法:声明关键词 变量名
let age
var age//
声明一个名为age的变量
赋值变量
”=“;变量 = 数值;age=18;
变量初始化:let age=18;
可同时声明多个:var name = '姓名' , age = 18;
数据类型
简单数据类型 | 说明 | 默认值 |
---|---|---|
Number | 数字型,包含整型值和浮点型值 | 0 |
Boolean | 布尔值类型,如true和false,等价于1和0 | false |
String | 字符串类型,js中字符串都带引号 | "" |
Underfined | var a;只声明未赋值 | underfined |
Null | var a=null;声明变量a为空值 | null |
运算符
算数运算符
先乘除再加减
console.log(3+4)
console.log((3+4)*7)
递增递减运算符
m++;++m;//m=m+1;(+在后则先加后赋值;在后反之;减法类似)
m--;--m;//m=m-1;
比较运算符
> < >= <= == !=
=== !==全等 要求值与数据类型都一致(不会自动转换类型)
逻辑运算符
&& || !;与或非
三元运算符
条件表达式?表达式1:表达式2
若表达式为真,返回表达式1;否则返回表达式2
语句
if语句
if(表达式){ }
if(表达式){ } else { }
if(表达式){ } else if { } ... else { }
switch语句
switch(变量){
case1:...;break;
...
defalse:...
}
for循环
for(初始化变量;条件表达式;操作表达式){
循环语句;
}
while循环
while(条件表达式){
循环语句;
}
do{
循环体
}while(条件表达式)
continue
跳出本次,继续下次
break
结束循环
数组
创建数组
var arr = new Array();
var arr = [ ];
var arr = [1,'me',true];
访问数组
索引从零开始
数组长度
数组名 . length;
var arr = [1,2,3];
console.log(arr.lengh);//输出3
新增数组元素
var arr = [1,2,3]
arr[3] = 4
注意:不要直接给数组名赋值,否则会覆盖之前的数组元素
函数
函数使用:
1..声明函数
法一:function 函数名(){
函数体
}
法二:var 变量名 = function(){ };
2.调用函数
法一:函数名();
法二:变量名();
返回值
function res(){
return 123;
}
res();//res() = 123
如果没有return则返回undefined
arguments
伪数组,特点:有length属性;按索引方式存储数据;不具有数组的push、pop方法