阿里云JavaScript

JS

https://edu.aliyun.com/course/1724

https://www.w3school.com.cn/js/js_intro.asp

JavaScript 能够改变 HTML 内容

JavaScript 能够改变 HTML 属性

<p>JavaScript 能够改变 HTML 属性值。</p>

<p>在本例中,JavaScript 改变了图像的 src 属性值。</p>

<button onclick="document.getElementById('myImage').src='images/eg_bulbon.gif'">开灯
</button>

<img id="myImage" border="0" src="images/eg_bulboff.gif" style="text-align:center;">

<button onclick="document.getElementById('myImage').src='images/eg_bulboff.gif'">关灯</button>

初始状态为未开灯,点击开灯按钮显示开灯图片,点击关灯按钮显示未开灯图片。

JavaScript 能够改变 HTML 样式 (CSS)

JavaScript 能够隐藏 HTML 元素

JavaScript 能够显示 HTML 元素

快捷键

直接写在html行内

写在script标签中

将外部的JS文件引入后执行

声明变量并赋值

变量就是存储数据的容器。

关键字:数字字母下划线$

JS中变量区分大小写

数值、字符串、布尔、undefined、null、object

undefined表明一个声明了没有赋值的变量,变量只声明的时候值默认是undefined

null表示一个空,变量的值如果想为null,必须手动设置

JS数据类型

数据类型-数值和字符串

当数值和字符串相加时,JavaScript 将把数值视作字符串。

其他数据类型

代码注释

其他类型转换为字符串

s = n.toString()

console.log(typeof s);

数值类型转换

布尔类型转换

其他类型转换为数值型

布尔类型转换

JS操作符与运算符

算数操作符

一元运算符

操作符在变量前面,先进行自身运算,再进行其他运算

操作符在变量后面,先进行其他运算,再进行自身运算

逻辑运算符

运算符 描述
&& 逻辑与
|| 逻辑或
! 逻辑非

比较运算符

运算符 描述
== 等于
=== 等值等型
!= 不相等
!== 不等值或不等型
> 大于
< 小于
>= 大于或等于
<= 小于或等于
? 三元运算符

赋值运算符

运算符的优先级

运算优先级从上往下

1:()优先级最高
2:一元运算符++--!
3:算数运算符(与数学中的运算先后一致)先*/%后+-
4:关系运算符><>=<=
5:相等运算符 == === != !==
6:逻辑运算符先&& 后||
7:赋值运算=

JS语句

顺序结构

分支结构

循环结构

if

switch-case的用法

while

while(){

}

如果条件成立,里面的代码就会一直反复执行,直到条件不成立

do-while

先执行一次代码,然后再进行条件判断

do{}

while();

for

<script type="text/javascript">
	
var str = "";
for (var i=1; i<=9; i++) {
	for(var j=i; j<=9; j++){
		str += i+' * '+j+' = ' + (i*j) + '\t';
	}
	str += '\n';
}
console.log(str);

</script>

'\t'每一个式子后面加一个空格

'\n'每一行,转行

continue&break

break:立即跳出整个循环,即循怀结束,开始执行循环后面的内容(直接跳到大括号)

continue:立即跳出当前循环,继续下一次循环(跳到+的地方)

求100以内,不能被7整除的数

for (var i=0; i<100; i++) {
	if(i%7==0){
		continue;
	}
	console.log(i);
}

输出除了7的倍数以外的所有数,当数值为7的倍数时,continue跳出当前循环,继续下一次循环;

求200-300之间第一个能被7整除的数;

for (var i=200; i<300; i++) {
	if(i%7==0){
		console.log(i);
		break;
	}
}

输出203,当数值为7的倍数时,输出该值,并跳出整个循环,循环结束。

JS数组

数组的基本概念

获取数组元素

遍历数组元素

求数组元素的和

循环遍历数组

JS函数

JavaScript 函数是被设计为执行特定任务的代码块。

JavaScript 函数会在某代码调用它时被执行。

函数的声明和调用

把一段相对独立的具有特定功能的代码封装起来,重复使用;

函数声明后,里面的代码是不会执行的;

函数中的代码想要执行,必须调用这个函数(不管什么情况下,函数不调用一定不会执行)。

形参&实参

形参:是在声明函数时写的,多个形参使用,隔开,形参的值不固定,形参仅仅是一个占位,与实参实际传入的值一一对应;

实参:实际传入函数中的值,传入后,在函数中使用形参获取具体的值。

函数的返回值

如果函数中没有return,函数调用之后接到的返回值是undefined;

有return,但return后面没有值,undefined;

函数中return之后的代码,不执行。

匿名函数与自调用

立即执行函数——自调用匿名函数;

(function(){

​ alert(123);

})();

作用域;

防止全局变量的污染,封装一个局部作用。

函数当作参数1

函数也是一种数据类型;

对象(数组、函数)

回调。

函数当作参数2

闭包。

变量提升及代码执行阶段

变量提升:在代码执行之前变量已经在编译阶段被声明了;

JS代码的运行分为解析(编译)阶段:语法检查,变量及函数进行声明;

运行阶段:变量的赋值,代码流程的执行。

作用域与代码执行

函数与变量同名,函数声明会替换变量声明;

作用域及作用域链

全局作用域:全局(在函数之外)声明的变量拥有全局作用域;全局变量可以在任何位置访问。

代码中有函数,函数就构成另一个作用域;

函数作用域:局部(函数内)声明的变量拥有函数作用域;局部变量只能在它们被声明的函数内访问。

函数中还有函数,在这个作用域中就可以诞生一个作用域。

JS对象

对象的概述

在真实生活中,汽车是一个对象

汽车有诸如车重和颜色等属性,也有诸如启动和停止的方法

所有汽车都拥有同样的属性,但属性值因车而异。

所有汽车都拥有相同的方法,但是方法会在不同时间被执行。

JS的属性可以包含基本值、对象、数组或者函数;

值是函数称为方法,其他类型的值是属性;

对象的声明及使用

this是个对象

在函数定义中,this 引用该函数的“拥有者”。

this的指向

this运行在那个对象下,就指向那个对象;

对象的遍历及删除

for in循环不仅可以循环变量对象,还可以循环遍历数组

包装对象

三种原始类型

数值、字符串、布尔;

原始类型的数据在一定条件下可以自动转为对象。

原始值可以自动当作对象来调用,可以调用各种属性及方法;

如果包装对象使用完成,会自动立即销毁。

数学对象

var n = -2;
var n2 = Math.abs(n);
console.log(n2);

Math.random()函数返回一个浮点,伪随机数在范围[0,1)。

Math.floor()返回小于或等于一个给定数字的最大整数。

获取n~m之间的随机数值:

Math.random()*(m-n)+n

日期对象

var da = new Date();
console.log(da);
console.log(Date())

Fri Mar 11 2022 08:46:47 GMT+0800 (中国标准时间) 向你问早啦~

JS 获取的是计算机本地时间

数组对象

slice()方法是浅拷贝

concat()

join()

字符串对象

substr()

代码规范

常见的 HTML 事件

事件 描述
onchange HTML 元素已被改变
onclick 用户点击了 HTML 元素
onmouseover 用户把鼠标移动到 HTML 元素上
onmouseout 用户把鼠标移开 HTML 元素
onkeydown 用户按下键盘按键
onload 浏览器已经完成页面加载

JavaScript 能够做什么?

事件处理程序可用于处理、验证用户输入、用户动作和浏览器动作:

  • 每当页面加载时应该做的事情
  • 当页面被关闭时应该做的事情
  • 当用户点击按钮时应该被执行的动作
  • 当用户输入数据时应该被验证的内容
  • 等等

让 JavaScript 处理事件的不同方法有很多:

  • HTML 事件属性可执行 JavaScript 代码
  • HTML 事件属性能够调用 JavaScript 函数
  • 您能够向 HTML 元素分配自己的事件处理函数
  • 您能够阻止事件被发送或被处理
  • 等等
posted on 2022-03-11 09:57  cookie的笔记簿  阅读(45)  评论(0编辑  收藏  举报