今日主要讲述内容:
JavaScript是什么?
编程语言。脚本语言。依赖于某种容器来运行。浏览器来解释说明。
编程语言的分类:
- 解释型:JS Python
- 编译型:C++ C#
- 半解释型:Java
JS是运行在浏览器上的,可以帮助我们去控制页面。
vue.js react.js jquery.js angular.js
node.js前端的服务器语言。
JS解释器:
火狐 :spidermonkey
Chrome: node: v8
Safari:JavaScriptcore
edge: chaket
JS可以放在什么地方?写在网页的什么位置?
放在结束body标签在后一行的上面
JS的数据类型
- 数字(number):整数,正数,小数,负数。
- 字符串(string):a,中文,@。
- 布尔型(boolean):true(1) false(0)
- 空:(null)
- undefined:未定义 ,没有值
定义变量:
变量:
开发中尽量减少使用自变量,后期维护困难的问题
在ES6(JS的新版本中),新推出了两个词替代var
- let:变量中用了let声名,无法重复定义的
- const:有let的特点,const声明的变量就是一个常量
JS的复杂数据类型
- 数组:一个变量对应多个值 1.使用数组函数
- 2. 使用new关键字
- 3.使用字面量的方式
<body>
<script>
//1.使用数组函数
let arr1= Array();// console.log(arr1);
//警告弹窗
//alert(arr);
console.log(1111);
console.log(arr1);
//2.使用new关键字
let arr2=new Array();
//3.使用字面量的方式
let arr3=[1,2,3,4,5];
//赋值
//下标(索引)
//给数组的第一个元素赋值
arr3[0] = 100;
arr3[1] = 90;
//打印输出数组中的第一个值
console.log(arr3[100]);
</script>
</body>
- 函数:定义一个函数,用来执行一系列代码,函数定义之后,不会自己执行需要我们手动调用函数。
- 无参无返回值
- 无参有返回值
- 有参无返回值
- 有参有返回值
《函数内部不可以再声明函数,但是可以调用函数,调用的方式和正常调用的方式相同》
return除了可以返回结果,还可以终止函数的继续执行。开发中,尽量不要在return后面继续造语句。
弹窗:实质上就是函数(\n换行弹窗里的回车)
- alert:警告弹窗
- confirm:带有确认和取消的弹窗,有返回值。点击确认返回ture。点击取消返回false。
- prompt:带有文本框的弹窗,有返回值,返回的就是文本框的内容。
逻辑判断,流程控制
JS的一个
所有的非空判断都会解析成ture
三元运算符
语法是固定的,只有一个条件两个选项。
+的特殊性:
除了可以进行加法计算之外,连接符。如果先入为主的认定+是连接符
判断:
逻辑判断:
if...else;
语法:
if(条件表达式){
要执行的代码;
}else{
要执行的代码;
}
if...else结构和多重if结构有什么不同
它可以嵌套,无限嵌套,原则上要求不超过三层
switch...case结构:
语法:
switch(表达式){
case选项一:
要执行的代码:
break:
case选项二:
要执行的代码
break:
......
default:
要执行的代码:
}
当表达式的值在case中匹配成功,会执行对应的代码,但是停不下来,后面的代码会继续执行。
怎么选?
- 当需求为区间范围时,switch....case根本无法使用
- if...else基本上啥都能干
- switch...case效率高
- 当需求为固定值,且值不多,switch...case
- 能用switch...case解决的不要用if...else
相似之处:
- 几乎所有的switch...case都可以转化为if...else
- default几乎相当于else
- case几乎相当于if
- 他俩都可以嵌套
不同之处:
- switch需要braek
- switch里面的选型杂乱无章
总结
- JS的引入,应该写在什么地方
- 数据类型
- 变量的定义和声明 var let const
- 三种弹窗
- 函数xxxxx
- return的作用
- 变量的作用域
- 运算符
- typeof isNAN
- 三元运算符
- 流程控制语句,两个流程控制之间的相互配合嵌套关系xxx
<script>
n % 400 == 0
function isRun(n) {
if ((n % 4 == 0 && n % 100 != 0) || n % 400 == 0) {
//此时是闰年
console.log(n + "是闰年");
} else {
//此时不是闰年
console.log(n + "不是闰年");
}
}
isRun(2016)
////////////////////////////////////////////
function isRun2(n) {
switch (n % 400) {
case 0:
console.log(n + '是闰年');
return;
default:
if (n % 4 == 0 && n % 100 != 0) {
console.log(n + '是闰年');
return;
}
console.log(n + '不是闰年');
}
}
isRun2(1900)
</script>

两种办法都可以得到
浙公网安备 33010602011771号
你点我就回上面去了ヾ(≧O≦)〃嗷~