javaweb之前端JavaScript学习笔记(一)基本语法

目录

Javascript的介绍

js特点:

javscript与java的区别

javascript的组成(三部分)

js与html的两种结合方式

js的原始类型和声明变量

js语句

js的运算符

js的数组

js的函数

全局函数

js的全局变量和局部变量


Javascript的介绍

Javascript:基于对象和事件驱动的语言,应用与客户端(脚本语言)
基于对象->提供好了很多对象,可以直接拿过来使用
事件驱动->html做网站静态效果,js动态效果
客户端:专门指的是浏览器
注:浏览器中的控制台可以调试js代码(区分大小写,html不区分)

js特点:

 交互性->信息的动态交互
 安全性->js不能访问本地磁盘的文件
 跨平台性->支持js的浏览器都可以运行

javscript与java的区别

 (1)不同公司开发的,是不用的语言
 (2)js是基于对象的,Java是面向对象 //?对象和面向对象的区别
 (3)java是强类型的语言,js是弱类型的语言
 (4)js只需要解析就可以执行,而java需要先编译成字节码文件,再执行

javascript的组成(三部分)

(1)ECMScript
  ECMA:欧洲计算机协会
  由ECMA组织指定的js的语法,语句…
(2)BOM
  brower object model:浏览器对象模型
(3)DOM
  document objct model:文档对象模型

js与html的两种结合方式

1.使用一个标签

scpript标签的位置:一般放在</body>后面,以免产生对象为空的错误(浏览器还未解析到js中所使用的对象的哪一行)

<body>
	<script type="text/javascript">
		//js代码,例如向页面弹出一个框,显示内容
		alert("弹窗");
	</script>
<body>

2.使用script标签,引入一个外部的js文件(此时script标签里的代码不会执行,只执行js文件的代码)

<script type="text/javascript" src="1.js"> </script>

js的原始类型和声明变量

1.原始类型:string(字符串),number(数字类型),boolean(true和false)
 null:获取对象的引用,null表示对象引用为空,所有对象的引用也是Object
 undifined:定义一个未赋值的变量
2.定义变量关键字:var
 typeof()运算符:可以查看变量的类型

<script type="text/javascript">
		var str = "abc";//string
		var mm = 123;//number
		var flag = true;//boolean
		var date = new Data();//null
		var x;//undifined
		alert(typeof(str));
</script>

js语句

if判断语句(同java中的if-else语句)
switch语句(js中switch支持所有的原始类型,区别于java)

switch(a){
		case:1
			alert("2");
		case:2
			alert("2");
		default:
			alert("other");
	}	

循环语句(for,while)

while(i>1){
		alert(i);
		i--;//i++和++i与java中的一样
	}
for(var mm=0;mm<=5;mm++){
		alert(mm);
	}

js的运算符

基本操作和java相同,以下为不同的地方:
1.在js里面不区分整数和小数,123/1000=0.123(java里等于零)
2.数字字符串,相加的时候和java一样(“123”+1->1231),相减时做的是数字的相减运算(“123”-1->122)(不是数字字符串时提示NaN)
3.boolean类型(true:1,false:0)
4. ==和===的区别:==比较的是值,===比较的是值和类型
5.直接向页面输出语句(可以输出变量,固定值和标签代码)

document.write("aaaa");
document.write("<br/>");//设置标签属性时,标签属性值使用单引号

js的数组

数组的定义方式:
(1)var arr = {1,2,“3”,true};//可以存放不同的数据类型
(2)var arr1 = new Array(5);//使用内置对象Array对象,未存放数据
(3)var arr2 = new Array(6,7,8);//使用内置对象Array,并存入六个元素6,7,8
数组的属性:arr.length;//获取数组的长度

二维数组

//定义二维数组
var arr0=new Array(3);
arr0[0]=["中国","南京","西安","苏州","杭州"];
arr0[1]=["德国","柏林","慕尼黑","狼堡","法兰克福"];
arr0[2]=["美国","纽约","华盛顿","休斯顿","底特律"];
​​​​​​​var arr1=arr0[0]; //取得第一列,arr1是一维数组
var firstval=arr1[0]; //这个是数值,对应国家名称

js的函数

定义函数的三种方式:
1.使用到关键字function

function 方法名(参数1,参数2,...) {//参数直接用参数名称
		方法体;
		返回值;//可有可无
	}

2.匿名函数

var add = function(参数列表){}

3.适用到js里面的内置对象:Function

var add = new Function("参数列表","方法体和返回值");

方法的重载:
重载->方法名相同,参数不同
重写->方法名相同,参数相同
js的函数不存在重载,会调用方法名相同的最后一个方法
模拟重载的方法:

function add(){//所有传入的参数都会存到arguments数组中
		if(arguments.length==2)//传入参数为2个
			return arguments[0]+arguments[1];
		if(arguments.length==3)//传入参数为3个
			return arguments[0]+arguments[1]+arguments[2];
			
	}
add(1,2);
add(1,2,3);

全局函数

js的全局函数:不属于任何一个对象,通过方法名称直接使用
常用方法:
 eval();//执行字符串中的js代码
 encodeURI();/decodeURI();//对字符进行编码/解码
 encodeURIComponent();/decodeURIComponent();//与上面两个方法相同,编码的字符数量不同
 isNaN();//判断当前字符串是否为数字
 parseInt();//类型转换

$(function() {}) 是$(document).ready(function()的简写, 这个函数什么时候执行的呢?

答案:DOM 加载完毕之后执行

DOM 在第一次页面加载完毕后,就在内存里了,无论后面怎么通过 ajax 的方式去局部修改 html 页面,都只是对内存中的 DOM 树进行修改,而 DOM在第一次页面加载完毕后就已经加载完毕了。

所以后面 js文件(动态加载或者 head 中加载)再使用到 $(function() {}) 函数肯定会执行的。
 

js的全局变量和局部变量

全局变量:在script标签里面定义的一个变量,这个变量在页面中js部分都可以使用(其它的script标签)
局部变量:在方法内部定义的一个变量,只能在方法内部使用

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值