2、基本使用及HelloWorld_哔哩哔哩_bilibili
html:结构层,超文本标记语言,决定网页的结构和内容
css:表现层,标记语言,决定网页的样式
(这里有一个小知识点:css预处理器,SASS:通过服务端处理,功能强大,解析效率高。LESS:基于nodejs,通过客户端处理,使用简单,功能比SASS简单,后台人员需要使用的话,建议使用LESS)
js:行为层,弱类型脚本语言,不用编译,直接被浏览器执行,控制网页行为。现在用的是ES6,全浏览器支持ES5,
js框架:
第一个框架:JQuery:优点:封装了成千上万的方法是简化了DOM操作,缺点是DOM操作太频繁,影响前端性能;在前端眼里使用它仅仅是为了兼容ie6,7,8
第二个框架:Angular:谷歌收购的前端框架,由一群java程序员开发,增加了模块化开发,
第三个框架:Reat:facebook出品,一款性能高的js前端框架;特点是提出了新概念【虚拟DOM】,有效的提高了前端的渲染效率,缺点是使用复杂,需要额外学习。
第四个框架:Vue:渐进式的js框架,逐步实现新特性,如实现了模块化开发,路由,状态管理等新特性,特点是模块化和虚拟DOM的优点。
第五个框架:Axios:前端通信框架:因为Vue边界很明确,就是为了处理Dom,所以不具备通信能力
1.什么事javascript?
是一门世界上最流行的脚本语言,一个合格的后端人员,必须要精通javascript。
1.2历史:
最新版本已经到es6版本,大部分浏览器孩纸停留在支持es5上,开发环境--线上环境,版本不一致。
他与java的核心没有变。关键字,变量等。
1.3快速入门:
引入javascript
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我的第一个</title>
<!-- <script></script>标签内部,写javascript代码-->
<!-- <script>
alert('hello,world');
</script>-->
<!--外部引入-->
<!--注意:script标签必须成对出现-->
<script src="one01.js"></script>
<!--不用显示定义type,也默认就是-->
<script type="text/javascript"></script>
</head>
<body>
<!--这里也能存放script标签-->
</body>
</html>
2基本语法
在javascript中没有那么多数据类型的区分,这是最轻松地
打印:alert()、console.log()在控制台打印变量!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
//1.定义变量 变量类型 变量名=变量值;javascript没有类型的说法
var score=71;
/* var name="天使";*/
//2.条件控制
if (score>60 && score<70){
alert("60-70")
}else if (score>70 && score<80){
alert("70-80")
}else {
alert("ohther")
}
</script>
</head>
<body>
</body>
</html>
2.1数据类型
数值,文本,图形,音频,视频
number,数值,js不区分小数和整数
123//整数123
123.4//浮点数123.4
1.123e3//科学技术法
-99//负数
NaN//not a number
Infinity//无穷,无限大
字符串‘abc’
布尔值:true false
逻辑运算与或非&&两个都为真,结果为真 ||一个为真结果为真 !真即假,假也是真
比较运算符:(重要!!!!)
=
==等于,类型不一样,值一样,会判断为true
===绝对等于,类型一样,值一样,结果为true
须知:
NaN===NaN,这个与所有的数值都不相等,包括自己。
浮点数问题:
console.log((1/3))===(1-2/3))
尽量避免使用浮点数进行运算,存在精度问题!
Math.abs(1/3-(1-2/3))<0.0000001
null和undefined区别?
null空 undefined是未定义
数组:
java的数值必须是相同类型的对象,Js中不需要这样
保证代码的可读性,尽量使用【】
取消数组下标,如果越界了,就会
undefined
对象:是大括号,数组是中括号
每个属性之间使用逗号
var person={
name="";
age:3;
}
取对象的值,
3数据类型
3.1字符串