Web前端 学习知识点总结(八)JavaScript的常用基础

系列文章目录

Web前端 学习知识点总结(一)HTML基本标签.
Web前端 学习知识点总结(二)之Form和Css选择器.
Web前端 学习知识点总结(三)Css字体、文本样式以及盒子模型.
Web前端 学习知识点总结(四)之display 和 float.
Web前端 学习知识点总结(五)qq导航条案例,使用min-width解决留白.
Web前端 学习知识点总结(六)定位position.
Web前端 学习知识点总结(七)Css3动画animation.
Web前端 学习知识点总结(八)JavaScript的常用基础.
Web前端 学习知识点总结(九)JavaScript的BOM和DOM基础.
Web前端 学习知识点总结(十)jQuery基础 获取文本和选择器.
Web前端 学习知识点总结(十一)jQuery进阶 动画和节点操作.
Web前端 学习知识点总结(十二)jQuery进阶 表单验证和简单正则表达式.
Web前端 学习知识点总结(十三)学生管理系统案例.



前言

通过HTML和CSS的学习,可以制作一个基本的网页,以及相应的动态效果。但是相比较于CSS来制作动画的效果有限,更多的动态效果则是通过接下来学习的JavaScript来完成和解决的,JavaScript可以说是前端人员目前必须要学会的语言之一。


一、JavaScript是什么?

JavaScript 是 web 开发者必学的三种语言之一:

  1. HTML 定义网页的内容
  2. CSS 规定网页的布局
  3. JavaScript 对网页行为进行编程

JavaScript的作用:
1.动态的效果,与用户交互
2.表单验证:必填项,提示语,pattern

Java和JavaScript的区别

JavaScript 和 Java 是完全不同的语言,不论是概念还是设计。

JavaScript
1.是一种客户端的脚本语言(当指令经过解释器的解释,呈现一定的结果的编程语言),是一种
解释性的语言(不用完全编译,部分正确就可以执行。)
与之相对的就是编辑性的语言
编译性语言(整个代码或者全部指令完全正确,且通过编译器的编译,才可以执行)
2.执行在客户端的
3.可以显示出一定的执行过程
遵循ECMAScript标准(核心语法,变量,数组,程序流程结构等)
JavaScript 在 1995 年由 Brendan Eich 发明,并于 1997 年成为一部 ECMA 标准。
ECMA-262 是其官方名称。ECMAScript 6 (发布于 2015 年)是最新的 JavaScript 版本。

引入两个重要的对象模型
BOM浏览器对象模型,浏览器的交互
DOM文档对象模型,快速找到标签和标记


二、JavaScript 外部使用

关于JS的位置相对比较灵活,可以出现在HTML中的任何位置,但是会影响执行顺序。
一个页面中可以有多个script。
标签之间。

外部脚本

JS脚本可放置与外部文件中:

如外部文件:Script.js

function myFunction() {
   document.getElementById("demo").innerHTML = "段落被更改。";
}

JavaScript 文件的文件扩展名是 .js。

实例,用以下的语句来引入需要的script。

<script src="myScript.js"></script>


三、JavaScript 的基础用法

3.1 JS输出

JavaScript 能够以不同方式“显示”数据:

  1. 使用 window.alert() 写入警告框;
  2. 使用 document.write() 写入 HTML 输出;
  3. 使用 innerHTML 写入 HTML 元素;
  4. 使用 console.log() 写入浏览器控制台。

3.2 JS注释

JavaScript 注释用于解释 JavaScript 代码,单行注释和多行注释与java 和 c++ 的注释方法类似,注释的作用在于:增加代码的可读性。

// 改变标题:

/*
 下面的代码会改变
 网页中
 id = "my" 的标题
*/
 document.getElementById("my").innerHTML = "页面";

3.3 JS变量

变量:是内存中的一块空间,存储的数据可以发生改变。

JS中的数据类型:
JS是弱类型的语言,一般是根据输入的值来判断数据的类型。
一条语句,多个变量,可以在一条语句中声明许多变量。

以 var 作为语句的开头,并以逗号分隔变量:

var Name = "SYT", LoveWatch = "NBA", data = 15000;

可以使用typeof()来查看数据的类型。

Number:数字	NAN
Var(变量)
String:字符串
Boolean:布尔 true false
Null:空 
Undefined:未定义

3.4 JS运算符

3. 4 .1 赋值运算符

赋值运算符,就是进行赋值的操作,将数据赋给需要处理的变量的过程。
在这里插入图片描述

3. 4 .2 算数运算符

算数运算符,是用于计算的符号,将数据或者变量进行相应规则的操作。
在这里插入图片描述

3. 4 .3 比较运算符(关系运算符)

用于判断式子两边的变量或者等式,是否相等。
有"=",">","<"等进行判断的式子。

<!-- 
== 

值相等  会进行数据类型的转化后,进行比较(和另一个进行比较)
			true:1
			number: 1 true 非1就是false
			string: "1" true 
=== 

 完全相等  三个等于号 不会进行类型的转换,完全等于(会先去判断数据类型)
		-->

在这里插入图片描述

3. 4 .4 逻辑运算符

逻辑运算符

  1. &&(与)尽量不成立的放前面

  2. ||(或)尽量成立的放前面

  3. !! (非) 用于自我判断

    	boolean:
    		number:0是 false 非0 是true
    		
    		string:""是false 其他都是true
    		
    		undefined:false
    		
    		null:false
    

3.5 程序的流程结构

无论是哪一种语言,设计程序的流程结构总是相同的。

  • 1、顺序结构

顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。

  • 2、选择结构

选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。

对于一般的双分支。
If (满足条件){
满足则会进入该处进行判断
}else{不满足会进入该处进行判断}

多分支的情况,一般用switch语句进行判断。
switch(满足条件){
case 1: break;

default:
}

  • 3、循环结构

循环结构表示程序反复执行某个或某些操作,直到某条件为假(或为真)时才可终止循环。循环结构的基本形式有两种:当型循环和直到型循环。

While {} //先判断,后执行,循环体有可能一次都不执行
Do{} while(条件) //先执行,后判断 至少执行一次
For (循环变量初始化,判断条件,循环变量的更新){ } // 循环次数固定

Break 跳出本次
Continue 跳出本轮

3.6 案例 打印九九乘法表

九九乘法表是循环部分的经典案例之一,关键在于对于行和列的控制。外层的i对行进行控制,内层的j对列进行控制,根据观察得的,j的值总是等于i位于的行的位置。
而且将script语句嵌入基础语句中,若要打印一个表格的形式,则一定有三个部分:

  • table(放在整个循环的外部)
  • tr(因为要控制行数,则放在i循环的上部)
  • td(是列的个数,要嵌套入j的循环体内)
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style>
			td {
				border: 1px solid red;
			}
		</style>
	</head>
	<body>
		<script>
//			<table>
				document.write("<table >")
				for(var i=1; i<=9;i++){
					document.write("<tr>")
//					<tr>
						for(var j=1;j<=i;j++){
							document.write("<td >"+i+"*"+j+"="+(i*j)+"</td>");
						}
						document.write("</tr>")
//						document.write("<br />");
//					</tr>
				}
				document.write("</table>")
//			</table>
		</script>
	</body>
</html>

3.7 数组

数组是一种特殊的变量,它能够一次存放一个以上的值。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--数组
			创建
			属性
				lenth 数据的个数
			方法
				1 toString() 把数组转换为数组值(逗号分隔)的字符串。
				2 join()指定分隔符来指定字符串
				3 sort()升序
					添加数据 arr.push();
					删除数据arr.pop()
			特点:
				数组长度是可变的
				元素的类型也是可变的		
		-->
		<script>
			var arr=new Array();
			var arr1=new Array(1,2,3);
			var arr2=[];
			var arr3=["apple","pear","banana"]
			document.write(arr+"<br/>")
			document.write(arr1+"<br/>")
			document.write(arr2+"<br/>")
			document.write(arr3+"<br/>")		
//			遍历
			for (var i=0;i<arr.length;i++){
				document.write(arr[i])
			}
//			方法二
//			for(var i in arr)
		</script>
	</body>
</html>

3.8 JS几个常用的对象

3.8.1 Math(数学)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--Math
			无需创建 
			方法  Math.random()随机数[0,1)
				Math.round()四舍五入 取整数
				Math.floor()向下取整
				Math.ceil()向上取整
				Math.pow(x, y) 的返回值是 x 的 y 次幂:
				Math.sqrt(x) 返回 x 的平方根:
				Math.PI;            // 返回 3.141592653589793
		-->
		<script type="text/javascript">
			document.write(Math.random()+"<br />")
			document.write(Math.round(3.5)+"<br />")
			document.write(Math.floor(3.2)+"<br />")
			document.write(Math.ceil(3.1)+"<br />")
			
		//随机产生一个1~10的数字
			document.write(Math.random()*10+"<br />")
			document.write(Math.ceil(Math.random()*10)+"<br />")
		</script>
	</body>
</html>

3.8.2 Date(日期)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<script>
			var d= new Date;
			document.write(d+"<br />")
			document.write(d.toLocaleString()+"<br />")
//			年
			document.write(d.getFullYear()+"<br />")
//			月
			document.write(d.getMonth()+"<br />")
//			日		
			document.write(d.getDate()+"<br />")
//			星期			
			document.write(d.getDay()+"<br />")
			document.write(d.getTime()+"<br />")
		</script>
	</body>
</html>

3.9 函数

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

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

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--函数
			定义
				1.不用写返回值的类型,形式参数列表也不用写类型,而且传入形参的个数可以和实际设定的
				函数中的形参可以不相同。
				2.函数中有一个内置参数,叫arguments(类似于一个数组u,接受到的参数)
					可变长度的参数
			在js中没有函数重载,当函数名一样就覆盖了
			
		-->
		<script>
//			方式一
			var f=function(a ,b){
				alert(a+b);
				return 1;
			}
			
//			方式二
			function f2(){
				var sum=0;
				for(var v in arguments){
					sum+=arguments[v];
				}
				return sum;
			}
			
			
//			方法一定要调用
			var r=f2(235,3,4)
			
//			f2()
			alert(r)
		</script>
	</body>
</html>


四、系统函数

一:parseInt()

本函数用来将一个字符串按照制定进制转换为整数。

parseInt(numString,[radix])

第二个参数表示使用的进制,使用10进制,也可能会有到8或者16进制。为了避免对“0”和“0x”开头的字符串解析错误,各种javascript编程规范都规定必须要明确给出第二个参数的值。

二:parseFloat()

本函数用来将一个字符串按照制定进制转换为小数。

parseFloat(num).toFixed(2)

toFixed(2) 保留两位小数

三:isNaN()

本函数可检查其参数是否是一个非数字值。

isNaN(x)

x为要检测的值,x为非数字值返回true,否则返回false。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="{CHARSET}">
		<title></title>
	</head>
	<body>
		<!--parseInt 对于小数来说,截取了小数部分
				第一个字符开始,解析到不是数字就停止
				如果第一个字符就不是数字,就返回NaN(Not a Number)
			parseFloat 
			isNaN
		-->
		<script>
			var num="123.123";
			document.write(num+1);
			document.write("<hr/>");
//			输出整数
			document.write(parseInt(num)+"<br />");
//			保留两位小数
			document.write(parseFloat(num).toFixed(2))
			document.write("<hr/>");
//			保留两位小数(只能用数字字符型的)
			var num2=123.12345;
			document.write(num2.toFixed(2))
		</script>
	</body>
</html>

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Le`soleil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值