JS常用语法
JavaScript常用语法
JS的调用方式
- 直接在
<script type="module"></script>
标签内些JS代码 - 引入文件
<script type="module" src="/static/js/index.js"></script>
- 将所需的代码通过
import
关键字引入到当前作用域
示例:
1 | let name = "acwing"; |
1 | <script type="module"> |
变量类型
- let 用来定义变量
- const用来定义常量
类似于Python,js中的变量类型可以动态变化
循环语句
1 | for (let i = 0; i < 10; i++) { |
for-in
循环,可以枚举数组中的下标,以及对象中的key
1 | let a = [1, 2, 3, 4, 5]; |
for-of
循环,可以枚举数组中的值,以及对象中的value
1 | let a = [1, 2, 3, 4, 5]; |
对象
英文名称:Object。类似于C++中的map
,由key:value
对构成。
示例:
1 | let person = { |
调用方式:
- person.name
- person.add_money()
- person[“name”]
- person[“add_money”]()
数组
数组中的元素可以是变量、数组、对象、函数
1 | let a = [1, 2, "a", "yxc"]; |
通过下标访问数组中的元素
数组的常用属性和函数:
- length:返回数组长度
- push():向数组末尾添加元素
- pop():删除数组末尾的元素
- splice(a, b):删除从
a
开始的b
个元素
1 | let a = [1,2,5,4,2]; |
函数
定义方式:
1 | function add(a, b) { |
如果未定义返回值,则返回undefined
类
定义:
1 | class Point { |
继承:
1 | class ColorPoint extends Point { |
- super作为函数调用时,代表父类的构造函数,且只能用在子类的构造函数中
- super作为对象时,指向父类的原型对象
- 在子类的构造函数中,只有调用
super
之后,才可以使用this
关键字 - 成员重名是,子类的成员会覆盖父类的成员。类似于多态。
静态方法:
在成员函数添加static
关键字即可。静态方法不会被类的实例继承,只能通过类来调用。
1 | class Point { |
静态变量:在一个实例被创建时,该变量不会被初始化。换句话说就是,静态变量相当于一个对象产生的所有实例中的一个全局变量
事件
JS的代码一般通过事件触发。
可以通过addEventListener
函数为元素绑定事件的触发函数。
鼠标:
- click: 左键点击
- dblclick: 左键双击
- contextmenu: 右键点击
- mousedown: 鼠标按下
- event.button: 0左键,1中键,2右键
- mouseup: 鼠标弹起
- event.button: 0左键,1中键,2右键
键盘:
- keydown: 某个键是否被按住,事件会连续触发
- event.key: 返回按的是哪个键
- event.altKey,event.ctrlKey,event.shiftKey: 是否同时按下了alt,ctrl,shift键
- keyup: 某个按键是否被释放
- event常用属性同上
- keypress: 紧跟在
keydown
事件后触发,只有按下字符键触发。适用于判定用户输入的字符- event常用属性同上
表单:
- focus: 聚焦某个元素
- blur: 取消聚焦某个元素
- change: 某个元素的内容发生了改变
窗口:
- resize: 当窗口大小发生变化
- scroll: 滚动指定的元素
- load: 当元素被加载完成
此文章版权归金晖の博客所有,如有转载,请註明来自原作者
评论