JavaScript(三)对象、函数、作用域

前言
后面阶段学习知识更加具体化,建议读者在学习理论知识的同时,也能上手操作,能够快速的理解掌握所学知识。

对象

此对象非彼“对象”,JavaScript中对象可以随意创建,那个“对象”只有靠自己努力(〃‘▽’〃),不过二者也有相同之处

和你的girlfriend一样,JavaScript的对象也有自己的属性和方法。例如,girlfriend对象有自己的属性:长发、年龄、身高等等;也会有自己的方法:吃饭、睡觉、打男朋友等等。
不同的girlfriend对象的属性不同,各自的方法也不同。简单来说,每个girlfriend都有自己独特的属性和方法,和其他对象可能相同也可能不同。
定义创建对象的方法:

//每个对象可以有多个属性,属性在{}中定义,属性之间用,进行分隔
var girlfriend = {hair="black",age=20,height=160}

对象还可以理解为多个变量的容器,属性对应的就是变量(与java中的Map类似,可以对比学习)
访问对象属性的方法:

//方法一,与java相同
girlfriend.hair;
//方法二
girlfriend["hair"];

对象方法
对象的方法可以理解为函数,在下文将详细介绍
定义:

methodName : function() { code lines }

调用:

//调用girlfriend的getHair方法
hair = girlfriend.getHair();

函数

函数相当于一个可重复使用的代码块,就像咖啡机,你放进去咖啡豆,出来的就是煮好的咖啡。它可以重复使用,返回一些处理的数据。
示例:

<script>
function myFunction()
{
    alert("Hello World!");
}
</script>

函数的声明使用关键字function,逻辑代码块在{ }中编写,调用改函数时就会执行{ }中的代码
函数可以设置参数,参数简单来说就是原材料,有些函数不需要原材料,有些函数则需要原材料。参数数量任意,由,分隔,声明函数时,在括号中定义参数

function myFunction(var1,var2)
{
code
}

调用函数时,传入参数的顺序必须按照函数声明时定义参数的顺序,例如:

function myFunction(name,color)
{
alert("Hello!My name is " + name + ", and I have " + color+"hair!");
}
<button onclick="myFunction("吕小宾","black")">check</button>

点击按钮时,就会弹出提示框"Hello!My name is 吕小宾,and I have black hair!"
函数同样可以返回值,简单来说就是返回成品,参数和返回值对于函数都不是必须的。

function myFunction()
{
    var age=20;
    return age;
}

如上例所示,调用该函数,就会返回变量age的值20。
如果只有return;则代表的是退出函数,示例:

function myFunction()
{
    if(1 > 0)
    {
    	return;
    }
    return 1;
}

如上例,因为1>0,所以就会进入if中,执行return;则退出了函数,不会返回值1。

作用域

在 JavaScript 中, 作用域为可访问变量,对象,函数的集合。

局部变量
比如在函数中var一个变量,该变量就只能在该函数中进行访问,在该函数体之外不能访问。如此一来,在不同的函数中就可以定义相同名字的变量,不会产生冲突。局部变量在函数开始执行时创建,函数执行完后局部变量会自动销毁。
示例:

//age的作用域是函数myFunction1,myFunction1执行完后age被销毁
function myFunction1()
{
    var age=20;
}
//age的作用域是函数myFunction2,myFunction2执行完后age被销毁
function myFunction2()
{
    var age=20;
}

全局变量
变量在函数外定义,即为全局变量。
全局变量有 全局作用域: 网页中所有脚本和函数均可使用,全局变量在页面关闭后销毁

var age = 20;
 
// 此处可调用 age 变量
function myFunction() {
    // 函数内可调用 age 变量
}

如果变量在函数内没有声明(没有使用 var 关键字),该变量为全局变量。
以下实例中 age 在函数内,但是为全局变量

// 此处可调用 age 变量
 
function myFunction() {
    age = 20;
    // 此处可调用 age 变量
}

摄影分享
摄于 丽江.玉龙雪山.云杉坪
在这里插入图片描述

原创文章 17 获赞 66 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44582716/article/details/105983021