Javascript-基础介绍

1 javasscript的介绍


Javascriptjava没有关系它不是编程语言(脚本语言)


2 javascript的作用

HTML:它是整个网站的骨架。

CSS它是对整个网站骨架的内容进行美化(修饰)

Javascript让整个页面具有动态效果。


3 javascript的组成部分

 

ECMAScript:它是javascript的核心(语法、变量、数据类型、语句、函数……)

DOM:document object model 整个文档对象

BOM:浏览器对象

 

4 javascript语法

区分大小写

变量是弱类型的(String str=”aaa” ,var str=”123”;)

每行结尾的分号可有可无(建议大家写上),注释javaphp等语言相

 

5 javascript的变量

变量可以不用声明,变量是弱类型统一使用var定义!定义变量的时候不要使用关键字和保留字。

 

6 javascript数据类型

Javascript数据类型分为原始数据类型和引用数据类型

原始数据类型:

stringnumberbooleannullundefined(变量存在,但未赋值)

引用数据类型:

 


7 javascript运算符

其它运算符与java大体一致,需要注意其等性运算符

== 在做比较的时候会进行自动转换。

=== 在做比较的时候会进行自动转换。


8 javascript语句

所有语句与java大体一致。

 

9 获取元素内容

获取元素:document.getElementById(“id”);(如果是一个变量,不需要引号,如果是一个值,那么需要使用引号)

获取元素里面的值:document.getElementById(“id”).value;


10 javascript事件

事件说明基本上所有的HTML元素中都可以指定事件属性。每个元素支持什么样事件应查询文档。
所有的事件属性都是以on开头,后面的是事件的触发方式,如:
onclick,表示单击
onkeydown,表示键按下

常用的事件类型:

鼠标点击相关:
onclick 在用户用鼠标左键单击对象时触发。
ondblclick 当用户双击对象时触发。
onmousedown 当用户用任何鼠标按钮单击对象时触发。
onmouseup 当用户在鼠标位于对象之上时释放鼠标按钮时触发。

鼠标移动相关:
onmouseout  当用户将鼠标指针移出对象边界时触发。
onmousemove 当用户将鼠标划过对象时触发。

焦点相关的:
onblur 在对象失去输入焦点时触发。
onfocus 当对象获得焦点时触发。

其他:
onchange 当对象或选中区的内容改变时触发。
onload 在浏览器完成对象的装载后立即触发。
onsubmit 当表单将要被提交时触发。


onfocus/onblur:聚焦离焦事件,用于表单校验的时候比较合适。
onclick/ondblclick:鼠标单击和双击事件。
onkeydown/onkeypress:搜索引擎使用较多。
onload:页面加载事件,所有的其它操作(匿名方式)都可以放到这个绑定的函数里面去。
               如果是有名称,那么在html页面中只能写一个。
onmouseover/onmouseout/onmousemove:购物网站商品详情页。
onsubmit:表单提交事件 ,有返回值,控制表单是否提交。
onchange:当用户改变内容的时候使用这个事件(二级联动)。

举例:JS完成全选和选不选操作

HTML代码

复选框前面的

<th><input type="checkbox" οnclick="checkAll()" id="checkAll"/></th>

下面所有的复选框

<td><input type="checkbox" name="checkOne"/></td>

JS代码:

<script>
	function checkAll(){
		//1.获取编号前面的复选框
		var checkAllEle = document.getElementById("checkAll");
		//2.对编号前面复选框的状态进行判断
		if(checkAllEle.checked==true){
			//3.获取下面所有的复选框
			var checkOnes = document.getElementsByName("checkOne");
			//4.对获取的所有复选框进行遍历
			for(var i=0;i<checkOnes.length;i++){
				//5.拿到每一个复选框,并将其状态置为选中
				checkOnes[i].checked=true;
			}
		}else{
			//6.获取下面所有的复选框
			var checkOnes = document.getElementsByName("checkOne");
			//7.对获取的所有复选框进行遍历
			for(var i=0;i<checkOnes.length;i++){
				//8.拿到每一个复选框,并将其状态置为未选中
				checkOnes[i].checked=false;
			}
		}
	}
</script>

JS完成注册页面表单校验

使用事件(聚焦事件onfocus离焦事件onblur),之前使用onsubmit也需要

使用<span></span>

向页面指定位置写入内容:innerHTML属性(该属性的值存在覆盖现象)

Html部分代码:

<input type="text" name="user" id="user" οnfοcus="showTips('user','用户名必须以字母开头!')" οnblur="check('user','用户名不能为空!')"/>
<span id="userspan"></span>

JS代码:

<sctript>
	function showTips(id,info){
		//获取span元素,给出提示信息
		document.getElementById(id+"span").innerHTML="<font color='gray'>"+info+"</font>";
	}
	function check(id,info){
		//获取用户输入的数据
		var uValue = document.getElementById(id).value;
		//进行判断
		if(uValue==""){
			//在span位置给出错误提示信息
			document.getElementById(id+"span").innerHTML="<font color='red'>"+info+"</font>";
		}else{
			document.getElementById(id+"span").innerHTML="";
		}
	}
</script>

 

11 javascripte的输出

警告框alert();

页面指定位置写入内容:innerHTML(属性)

页面写入内容:document.write(“”);


12 javascript的引入方式
内部引入方式

直接javascript代码写到<script type=”text/javascript”></script>

外部引入方式

需要创建一个.js文件,在里面书写javascript代码然后在html文件中通过script标签的src属性引入该外部的js文件。


举例:使用JS完成注册表单数据校验

Html部分代码

为表单绑定一个事件

<form action="#" method="get" οnsubmit="return checkForm()">

需要校验的输入项目定义id

<input type="text" name="user" id="user" />

JS代码:

<script type="text/javascript">
	function checkForm(){
		/*校验用户名*/
		//alert("aa");
		//获取用户输入的数据
		var uValue =  document.getElementById("user").value;
		//alert(uValue);
		if(uValue==""){
			//给出错误提示信息
			alert("用户名不能为空!");
			return flase;
		}
		
		/*校验邮箱*/
		var Evalue = document.getElementById("email").value;
		if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(Evalue)){
			//给出错误提示信息
			alert("邮箱格式不正确!");
			return false;
		}
	}
</script>

javascript内置对象

Array对象

数组的创建:

 

数组的特点:长度可变!数组的长度=最大角标+1

Boolean对象

对象创建:

 

如果value 不写,那么默认创建的结果为false

Date对象

getTime()

返回 1970 年 1 月 1 日至今的毫秒数。

解决浏览器缓存问题

 Mathnumber对象

java里面的基本一致。

String对象

match()

找到一个或多个正则表达式的匹配。

substr()

从起始索引号提取字符串中指定数目的字符。

substring()

提取字符串中两个指定的索引号之间的字符。

例子

<script>
	var str = "-a-b-c-d-e-f-";
	var str1 = str.substr(2,4);//-b-c
	//alert(str1);
	
	var str2 = str.substring(2,4);//-b
	alert(str2);
</script>

RegExp对象

正则表达式对象

test

检索字符串中指定的值。返回 true 或 false。

全局函数

全局属性和函数可用于所有内建的 JavaScript 对象


关于编码和解码的一组方法:

<script>
	var str = "张三";
	//alert(encodeURI(str));//%E5%BC%A0%E4%B8%89
	//alert(encodeURIComponent(str));//%E5%BC%A0%E4%B8%89
	
	//alert(decodeURI(encodeURI(str)));//张三
	//alert(decodeURIComponent(encodeURIComponent(str)));//张三
	
	var str1 = "http://www.itheima.cn";
	//alert(encodeURI(str1));//http://www.itheima.cn
	//alert(encodeURIComponent(str1));//http%3A%2F%2Fwww.itheima.cn
	
	//alert(decodeURI(encodeURI(str1)));//http://www.itheima.cn
	//alert(decodeURIComponent(encodeURIComponent(str1)));//http://www.itheima.cn
	
	var str2 = "alert('abc')";
	//alert(str2);
	eval(str2);
	
</script>


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值