JavaScript的入门(下)

目录

一、JavaScript的内置对象-----Array

二、JavaScript自定义对象的方式

1、第一种表示方式:function 对象名(形式列表...)

2、第二种表示方式:定义对象的时候,function 对象(){}----不带参数

3、第三种表示方式:第二种表示方式使用js内置对象:Object----------代表的所有对象的模板

4.第四种表示方式:json数据格式

三、常用的DOM操作

四、常用的事件编程

总结


一、JavaScript的内置对象-----Array

数组的三种表示法:

1、var  数组对象名 = new Array() ;//不指定长度

2、 var  数组对象名 = new Array(size) ;//指定数组长度

3、 var  数组对象名 = new Array([元素1,元素2,...]) -----可以简化为:var  数组对象名 = [元素1,元素2,...] ;

二、JavaScript自定义对象的方式

1、第一种表示方式:function 对象名(形式列表...)

	<script>
	/*第一步:定义一个对象:
	function 对象(属性1,属性2,属性3...){  //属性就是某个真实世界事物的特征!
						
						//给属性赋值
						//给对象添加功能(方法)
	*/					
	function Person(name ,age ,gender,address){
		
		/*给属性赋值
		1.=左边的name----相当于要个Person对象添加name值
		   =右边的name----当前形参里面的name
		2.this.属性名称=形参值
		3.  
		*/
		
		this.name=name;
		this.age=age;
		this.gender=gender;
		this.address=address;
		/*给对象添加功能(方法) eg:人会学习  
		this.方法名=function(){}
		*/
		
		this.speak=function(a){//a 是形参
		alert("会说"+a);
			
		}
		this.play=function(gameName){
			alert("会玩"+gameName);
		}
	}
	// 第二步:创建一个具体的人:创建对象
	// var 对象名=new 对象(实参1,实参2....)
	  var person=new Person("小刘","20","女","中国");
	  /*第三步:输出
	    对象名.属性名 =获取内容
	    对象名.方法名() ;调用方法
	  */
	document.write("这个人的姓名为:"+person.name+",年龄为:"+person.age+",性别为:"+person.gender+",地址为:"+person.address);
	person.speak("英语");
	person.play("王者荣耀");

	</script>

2、第二种表示方式:定义对象的时候,function 对象(){}----不带参数

function Person(){
		//对象名.追加的属性名称 = 实际值;
		var p=new Person();
		p.name="乔安";
		p.age=20;
		p.gender="女";
		p.address="西安";
		//追加方法-----对象名.追加的方法名 = function(空参/带参数) {...}
	    p.study=function (className){
			alert("正在学习JAVAEE+clasName");
		}
	}
	document.write("这个人的姓名是:"+p.name+",这个人的年龄是:"+p.age+",性别是:"+p.gender
				+",住址是:"+p.address) ;
				p.study("前端的javascript") ;

3、第三种表示方式:第二种表示方式使用js内置对象:Object----------代表的所有对象的模板

var p =new Object();
	//追加属性
	 p.brand="华为mate30";
	 p.price=4099;
	 p.color="天蓝色";
	 p.memory="128G";
	 //追加方法
	 p.call=function(toName){
		alert("可以打电话:"+toName);
	 }
	//打印手机信息
	document.write("手机品牌是:"+p.brand+",价格是:"+p.price+",颜色是:"+p.color+",内存是:"+p.memory);
	p.call("小明");

4.第四种表示方式:json数据格式

var 对象名 = {"key1":value1,"key2":value2....} 
var student={
		 "name":"下滑",
		 "age":40,
		 "gender":"女",
		 "address":"西安",
		 "study":function(){
			 alert("学习JAVA");

三、常用的DOM操作

	    失去焦点的函数
		function testBlur(){
			alert("失去焦点事件触发了") ;
			
			方式1:docuement.getElementById("id属性值") ,常用的,id属性值(唯一的)
			
			通过id="username"获取input标签对象
			var input = document.getElementById("username") ;
			
			方式2:docuement.getElementsByClassName("页面中所有同名的class属性值"),需要在标签中给定class属性值
			  获取的不是单个标签对象,而是标签对象列表,理解为一个数组,
			 var input = document.getElementsByClassName("c1")[0] ;
			 
			 方式3:docuement.getElementsByName("页面中所有同名的name属性值") ;
			 在标签中给定name属性值
			 var input = document.getElementsByName("name")[0] ;
			 
			 方式4:docuement.getElementsByTagName("页面中所有同名的标签名称") ;
			 var input = document.getElementsByTagName("input")[0] ;
			
			
			
	

四、常用的事件编程

1.点击相关的事件
			单击  click    -- onclick属性
			双击  dbclick  -- ondblick属性
2.焦点事件
			获取焦点  focus -- onfocus属性
			失去焦点  blur -- onblur
					
 3.选项卡发生变化的事件,一般用在select下拉菜单中
		   事件名称 change  --onchange属性

eg:
<body>
		<input type="button" value="单击按钮"  onclick="testClick()"/>
		<input type="button" value="双击按钮" ondblclick="testDbclick()" />
		用户名:<input type="text" value=""  onfocus="testFouce()"  id="username" onblur="testBlur()" />
        <span id="tip"></span>	 
		  <hr/>
		  <select onchange="testOnChange()"  id="province" >
			  <option   value="请选择" >请选择</option>
			  <option   value="陕西省" >陕西省</option>
			  <option   value="山西省" >山西省</option>
			  <option   value="河北省" >河北省</option>
		  </select>
		  <select id="city">
			  <!-- 通过数组存放了城市,然后在进行遍历
			  <option value=""></option> -->
		  </select>
	</body>
	<script>
	//
	function  testClick(){
		alert("单击");
	}
	function testDbclick(){
		alert("双击");
	}
	function testFouce(){
		var a =document.getElementById("username");
		a.value="";
	}   
	function testBlur(){
	 var name=	document.getElementById("username").value;
     var a=document.getElementById("tip");
	 if(name=="admin"){
		 a.innerHTML="正确".fontcolor("green");
	 }else{
		 a.innerHTML="错误".fontcolor("red");
	 }
	}
	  function    testOnChange(){
		  // var province=document.getElementById("province");
		  // provinceCotent =province.value ;
		  var province=document.getElementById("province").value;
		  var city=document.getElementById("city");
		  city.innerHTML="";
		   if(province=="陕西省"){
			   var arr=["西安市","宝鸡市","咸阳市","汉中市"];
			   for( var i=0;i<arr.length-1;i++){
				   city.innerHTML+="<option value="+arr[i]+">"+arr[i]+"</option>"
			   }
		   }
		   
		   
		   if(province=="山西省"){
		   			   var arr=["开封市","大同市","洛阳市","晋中市"];
		   			   for( var i=0;i<arr.length-1;i++){
		   				   city.innerHTML+="<option value="+arr[i]+">"+arr[i]+"</option>"
		   			   }
		   }
		   if(province=="河北省"){
		   			   var arr=["秦皇岛市","保定市","沧州市","石家庄市"];
		   			   for( var i=0;i<arr.length-1;i++){
		   				   city.innerHTML+="<option value="+arr[i]+">"+arr[i]+"</option>"
		   			   }
		 
		   }
		   

总结

       今日的学习内容有点略多,需要深入理解,尤其是DOM操作和事件编程,会在前端和后端的交互中使用,在编写的过程中一定要仔细仔细仔细,不然就会像小白一样,太容易出错,而且今天学的内容有的方法还可以进一步优化的。希望今日小白的能帮助到你!

         发光并非太阳的专利,只要努力,你也可以。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值