1.基础
js框架包括jQuery,angular,react,Vue,axios
javascript是一门脚本语言
ECMAscript是js的标准,最新版本达到了es6,而大部分浏览器只支持到es5,故开发环境和线上环境存在版本差。
2.引入js
js代码可放入代码的任何地方,head里,body最下边都可以。(内部标签)
例:一个简单的弹窗放在head标签下
<script>
alert('hello');
</script>
js在head中路径引入(外部引入)
<script src="./js/qj.js"></script>
3.基本语法入门
var num = 1;
if(num>1){
alert('yeah');
}else alert('no');
在网页调试的comsole中输入代码回车进行js的调试
source中完成代码的断点调试
数值,文本,图形,音频,视频
①数值:js不区分整数和小数,统为number
1.11e3
NaN
-100
Infinity
②字符和字符串:‘a’ “abc” ‘\n’
· 多行字符串编写
console.log(str.length)
③布尔值:ture,false
④逻辑运算:&& || !
⑤比较运算符 :
= 赋值
== 类型不一样,值一样,ture
=== 类型和值都一样,ture
避免使用浮点数进行运算,存在精度的损失的问题
⑥null和undefine
null空指针
undefine未定义
⑦数组:js中不需要是一系列相同类型的对象 中括号
· 数组定义
var arr = [1,2,3,4,5,'hello'];
· 通过元素获得下标索引
arr.indexOf(2) //数字二在arr【1】位置
· slice()截取数组的一部分(数组版的substring,含头不含尾)
· push、pop在数组的尾部对元素压入和弹出
· unshift(),shift()往头部添、去掉元素
· sort()排序
· reverse()元素反转
· concat()拼接数组
concat并没有修改数组,只是会返回一个新的数组
· join()连接符
用特定的字符串连接数组元素
· 数组遍历for of
var arr =[3,4,5];
for(var x of arr){
console.log(x);
}
得到
· 数组
⑧对象:大括号定义
逗号隔开每个属性,最后一个不需要加逗号
对象指若干个键值对
js中的所有键都是字符串,值是任意对象
var person = {
name:"mimo",
age:5,
email:"166@qq.com",
score:60
}
· 对象赋值
person.name = "mimimo"
· 动态删减
delete person.name
· 动态添加(直接添加即可)
person.qq =166
· 判断属性是否在对象中
键都是字符串
'age' in person
严格检查模式strict的设置
局部变量建议使用let来定义
'use strict';
i = 1;
}
从而js的随意性
5.流程控制
循环分支等等
6. Map 和Set
es6中新出的map集合
运用如下若要统计学生成绩、名字,通过定义数组如下,查询十分麻烦
var names = ["tom","jack","mirr"];
var scores = [100,90,80];
map集合后 map.get通过key获得value,map.set增加键及对应value
var map = new Map([["tom",100],['jack',90],['mirr',80]]);
var name =map.get("tom");
map.set('admin',123456);
console.log(name);
*map.deleta(‘admin’)删除键
遍历Map使用for of
for(var x of map){
console.log(x);
}
set:无序不重复的集合
set集合可以去重如图集合中的四个1变成一个
var set = new Set([3,1,1,1,1]);
set.add(2);
set.delete(3)
增2删3
判断set集合中是否有3
console.log(set.has(3))
false
遍历set
for of