函数的介绍和基本使用
函数:
function,是被设计为执行特定任务的代码块
说明:
函数可以把具有相同或相似逻辑的代码“包裹”起来,
通过函数 调用执行这些被“包裹”的代码逻辑,
这么做的优势是有利于精 简代码方便复用
基本语法
函数的声明语法
例如:
function sayHi() {
document.write('hai~')
}
函数名命名规范
1.和变量命名基本一致
2.尽量小驼峰式命名法
3.前缀应该为动词
4.命名建议:常用动词约定
function getName() {}
function addSquares() {}
函数的调用语法
函数名()
注意:声明(定义)的函数必须调用才会真正被执行,使用 () 调用函数
sayHi()
//可以重复调用
sayHi()
函数体
函数体是函数的构成部分,它负责将相同或相似代码“包裹”起来,
直到函数调用时函数体内的代码 才会被执行。
函数的功能代码都要写在函数体当中。
function sayHi() {
console.log('嗨!') //函数体
}
sayHi() //函数调用
有参数的函数
有参数的函数声明和调用
有参数的函数
多个参数之间用逗号隔开
执行过程
形参和实参
形参:声明函数时写在函数名右边小括号里的叫形参(形式上的参数)
实参:调用函数时写在函数名右边小括号里的叫实参(实际上的参数)
形参可以理解为是在这个函数内声明的变量(比如 num1 = 10)
实参可以理解为是给这个变量赋值
有返回值的函数
用return返回数据
当函数需要返回数据出去时,用return关键字
function getSum(x,y) { //形参位置名字可以自定义,用来接收实参
return x + y //把传进来的两个值做求和运算,并返回给调用者,调用者可以定义一个变量用来接收返回值
}
let num = getSum(10,20) //调用getSum函数,传入10,20两个实参
document.write(num) //body中输出
用return返回数据需要注意的细节
在函数体中使用 return 关键字能将内部的执行结果交给函数外部使用
函数内部只能出现 1 次 return,并且 return 后面代码不会再被执行,所以 return 后面的数据不要换行写
return会立即结束当前函数
函数可以没有 return,这种情况默认返回值为 undefined
内置函数
什么是内置函数
JavaScript内部封装好的一些函数,让开发者直接调用就完成对应功能
例:prompt() alert() document.write() Number() Boolean()
内置函数带括号的,意味着可以传递参数
内置函数之数字提取
parseInt()
是一个返回值为number类型的函数
作用:从字符串中提取出整数
细节:
字符串内容从左到右依次分析是否数字,直到遇到非数字停止
如果字符串不是以数字开头,得到NaN
parseFloat()
是一个返回值为number类型的函数
作用:从字符串中提取数字(包括小数)
细节:
字符串内容从左到右依次分析是否数字,直到遇到第二个小数点或者非数字停止
如果字符串不是以数字开头,得到NaN
对象的介绍和语法
对象是什么
对象(object):JavaScript里的一种数据类型
可以理解为是一种数据集合
对象声明语法
例如:
let person = {} //声明了一个person的对象
对象中的属性和方法
属性:信息或叫特征(名词)。 比如 手机尺寸、颜色、重量等
方法:功能或叫行为(动词)。 比如 手机打电话、发短信、玩游戏
属性
属性都是成 对出现的,包括属性名和值,它们之间使用英文 : 分隔
多个属性之间使用英文 , 分隔
属性就是依附在对象上的变量(外面是变量,对象内是属性)
属性名可以使用 "" 或 '',一般情况下省略,除非名称遇到特殊符号如空格、中横线等
属性访问
声明对象,并添加了若干属性后,可以使用 . 或 [] 获得对象中属性对应的值,我称之为属性访问。 简单理解就是获得对象里面的属性值。
增加属性
也可以动态为对象添加属性,动态添加与直接定义是一样的,只是语法上更灵活
对象中的方法
数据行为性的信息称为方法,如跑步、唱歌等,一般是动词性的,其本质是函数
let person = {
name:'andy', //属性
sayHi: function() { //方法
document.write('hi~')
}
}
方法是由方法名和函数两部分构成,它们之间使用 : 分隔
多个属性之间使用英文 , 分隔
方法是依附在对象中的函数
方法名可以使用 "" 或 '',一般情况下省略,除非名称遇到特殊符号如空格、中横线等
对象中的方法访问
声明对象,并添加了若干方法后,可以使用 . 调用对象中函数,我称之为方法调用
let person = {
name:'andy', //属性
sayHi: function() { //方法
document.write('hi~')
}
}
//对象名.方法名()
person.sayHi()
注意: 千万别忘了给方法名后面加小括号
新增对象中的方法
也可以动态为对象添加方法,动态添加与直接定义是一样的,只是语法上更灵活
person.move = function() {
document.write('移动')
}
注意:无论是属性或是方法,同一个对象中出现名称一样的,后面的会覆盖前面的!!!
内置对象
内置对象是什么?
JavaScript内部提供的对象,包含各种属性和方法给开发者调用
例如:
document.write()
console.log()
内置对象Math
Math对象是JavaScript提供的一个“数学高手”对象
提供了一系列做数学运算的方法
random:生成0-1之间的随机数(包含0不包括1)
ceil:向上取整
floor:向下取整
max:找最大数
min:找最小数
pow:幂运算
abs:绝对值
如何生成N-M之间的随机数
公式:
Math.floor(Math.random() * (M - N + 1)) + N