Java教程

JavaScript(闭包函数、对象)

本文主要是介绍JavaScript(闭包函数、对象),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、"闭包"函数

1、是一个函数,可以访问另一个函数中的局部变量。

2、作用:

(1)可以在函数的外部访问函数内部的变量

(2)可以让变量的值始终保存在内存中

注意:滥用'闭包'对程序的执行效率会产生很大的影响

3、创建

在一个函数的内部创建另外一个函数。另外一个函数可以访问该函数的局部变量

二、JavaScript的预解析

1、先对var变量和function函数进行解析,然后再执行其他的代码

/*先解析var变量num然后执行console输出最后把10赋给num*/
console.log("num=",num);
var num = 10; 

2、function函数的预解析

/*先解析fn函数的定义然后执行console语句*/
console.log("1+2+3+...+100=",fn());

function fn(){
		var s = 0;
		for(var i=1;i<=100;i++){
			s += i;
        }
        return s;
}

三、对象

 1、对象

一切皆为对象,是属性和行为的结合体。在面向对象中把'属性'称为对象的成员(成员变量)把'行为'称为成员方法(成员函数)。

属性:反映的是对象的静态特征

行为:反映对象的动态特征

2、JavaScript中的对象

是一种数据类型,用"{}"表示一个对象,在"{}"中包裹了对象的成员(包括属性和方法)以"key:value"(键-值对)方式存储各成员。"key"是成员名,"value"是成员的值

对成员的访问格式是:

对象名.属性名 或 对象名['属性名']

对象名.方法名([参数]) 或 对象名['方法名']([参数])

3、在JavaScript中可以先声明空对象,然后给对象添加属性和方法

var 对象名 = {}
		 
	对象名.属性名 = 值
	对象名.方法名 = function([参数]){
		                 方法体语句
                    }

4、使用new运算符创建对象

(1)Object:是JavaScript中的超级对象,即用户创建的对象都直接或间接的继承了该对象的某些特性。

(2)创建方式

var 对象名 = new Object();

5、利用构造方法创建对象

(1)定义构造方法

function 构造方法名([参数]){
			 
		this.属性名 = 值
		this.方法名 = function([参数]){
			                方法体语句;
            			}
 }

构造方法:是一个初始化对象的方法

(2)利用构造方法创建对象

var 对象名 = new  构造方法名([参数]);

(3)注意:

           建议构造方法名的首字母大写   

           this是关键字,代表当前对象

6、使用for...in循环遍历对象的成员

for(var 遍历名 in 对象名){
		 
		    循环体语句
		 }

 7、使用in运算符判断对象是否存在某个成员

 '成员名' in 对象名  -->返回一个boolean型的值,'true'表示存在,'false'表示不存在

四、JavaScript的内置对象:用户可以直接使用的对象

1、Math

包含数学常数属性和数学函数

(1)属性

Math.PI:表示圆周率

(2)方法:

Math.abs(x):返回x的绝对值

Math.pow(x,y):返回x的y次方

Math.sqrt(x):返回x的算术平方根

Math.random():返回伪随机数(0.0~1.0之间)

Math.round(x):返回x四舍五入后的最接近的整数

Math.floor(x):返回小于或等于x的最大整数。

Math.ceil(x):函数返回大于或等于x的最小整数

Math.max():返回参数中的最大值

Math.min():返回参数中的最小值

2、Date对象

使用new Date()创建对象
    
(1)构造方法:
        
A、new Date():无参构造,当前的日期时间
           
B、new Date(y,M,d,h,m,s):带参的构造,参数是年、月、日、时、分、秒
           
C、new Date(dateString): 参数是日期字符串

注意:月份的整数值,从 0(1月)到 11(12月)
        
(2)常用方法
        
A、获取年份: date.getFullYear():获取4位年份

B、getMonth():获取0~11之间的月份    

C、getDate():获取日期(一个月中的第几天)    

D、getDay():获取星期几(一周中的第几天)

E、getHours():获取小时数    

F、getMinutes():获取分钟数

G、getSeconds():获取秒钟数    

H、getMilliseconds() :返回指定日期对象的毫秒数

I、getTime():返回1970-1-1 00:00:00到当前时间之间的毫秒数

J、toDateString():将日期转为字符

K、toLocaleDateString():将日期转换为本地日期格式的字符串

3、Array对象

(1)数组类型检测的方法:

instanceof运算符:

isArray()方法:Array.isArray([参数])

(2)数组的遍历

 for(var i=0;i<arr.length;i++){
		console.log(arr[i])
}

for(var k in arr){
		console.log(arr[k])
}

for(var k of arr){
		console.log(k)
}

arr.forEach(function(t){
		console.log(t)
})
		   
arr.map(function(t){
		console.log(t)
})

(3)添加元素

push(参数...):在数组的末尾添加一个或多个元素

unshift(参数...):在数组开头添加一个或多个元素

(4)删除元素

pop():删除数组最后一个元素,若数组为空返回undefined

shift():删除数组的第一个元素,返回数组的第一个元素

(5)排序 :sort()

(6)逆置:reverse()

(7)数组的索引:查找元素在数组中的位置

indexOf([参数]):查找给定值的第一个索引

lastIndexOf([参数]):查找给定值的最后一个索引

(8)数组转换字符

toString():直接转换

join(字符):在转换字符串时,数据之间用给定的字符进行连接

这篇关于JavaScript(闭包函数、对象)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!