================================================================================================================================================================================================================
做好准备!赶紧上车!
Let’s go!
JavaScript函数
============
概念
函数
封装了一段可被重复调用执行的代码块,通过此代码块可以实现大量代码的重复使用。
函数内部是由参数、函数返回值return所组成。
参数
参数语法:形参和实参。
-
形参:函数定义时设置接收调用时传入
-
实参:函数调用时传入小括号内的真实数据
函数返回值return
函数的返回值return是返回给函数的调用者
函数的两种声明方式
- 自定义函数方式(命名函数)
// 声明定义方式
function fn() {…}
// 调用
fn();
- 函数表达式方式(匿名函数)
// 这是函数表达式写法,匿名函数后面跟分号结束
var fn = function(){…};
// 调用的方式,函数调用必须写到函数体下面
fn();
【例题】写一个函数,求1-100之和。
//求和1-100函数
构造函数
====
概念
构造函数:是一种特殊的函数,把对象封装到函数中。利用函数方法重复相同代码,把对象里面抽象出来封装到一起。
对象
对象是一个具体的事物 ;对象是由属性和方法组成的。
创建对象的方法:
- var 字面量创建对象={ }
var obj = {
uname: ‘Z3’,
age: 90,
sex: ‘男’,
sayHi: function() {
console.log(‘hi~’);
}
}
// 调用函数
console.log(obj.uname);
console.log(obj[‘age’]);
- new Object创建对象
var obj = new Object(); //类似于创建数组 创建一个空的对象
obj.unmae = “潘诗颖”;
obj.age = 18;
obj.sex = ‘女’;
obj.sayHi = function() {
console.log(‘Hi~’);
}
obj.eat = function() {
console.log(“chifanfangfa”);
}
// 注意区分用 字面量创建对象的语法:
// 1)我们用 = 等号赋值的方法 添加对象的属性和方法
// 2)每个属性和方法之间用; 分号结束
// 下面调用属性和方法:
console.log(obj.unmae);
console.log(obj.age);
obj.sayHi();
obj.eat();
- 用构造函数创建对象
把对象封装到函数中,利用函数方法重复相同代码,把对象里面抽象出来封装到一起就是构造函数(简单来说,构造函数里面封装的就是抽象的东西!用来初始化对象)。
// 1.构造函数 明星 泛指的某一大类
function Star(uname, age, sex) {
this.uname = uname;
this.age = age;
this.sex = sex;
this.sing = function(sang) {
console.log(sang);
}
}
// 2.对象 是一个具体的事物 孙千具体的明星
var sq = new Star(‘孙千’, 18, ‘女’);
// 我们需要用 new Star()调用函数 创建一个对象
console.log(sq.uname);
// 另一种表达式
console.log(sq[‘sex’]);
// 调用函数中的方法:
sq.sing(‘none’);
// 3.可以调用多个对象
var zyt = new Star(‘周雨彤’, 20, ‘女’);
console.log(zyt.uname);
内置对象
内置对象帮我们快速开发。JS里面自带的一些对象,比如:Math、Date、Array、String等。
由于内置对象的内容较多,具体更多内置对象可以在在自己需要的时候去该网站查询:
- Math对象
Math数学对象不是一个构造函数,所以我们不需要new来调用可直接使用
// Math数学对象不是一个构造函数 所以我们不需要new来调用 可直接使用里面的属性和方法
console.log(Math.PI);
console.log(Math.max(1, 99, 33, 2)); //99
console.log(Math.max(1, 99, ‘pink’)); //非数值就会输出NaN
console.log(Math.max()); //-Infinity
- Date日期对象
Date日期对象是一个构造函数,所以需要new出来
// 日期对象是一个构造函数 必须使用new来调用创建我们的日期对象
var arr = new Array(); //创建一个数组对象
var obj = new Object(); //创建一个对象实例
//1. 使用对象Date⭐
var date = new Date(); //如果没有给具体时间就是返回当前的时间
console.log(date);
- 数组对象
需要创建一个数组有两种方法:数组字面量、new对象
// 创建数组的两种方式
// 1.利用数组字面量
var arr = [1, 2, 3];
console.log(arr[0]); //数组里的第一个元素
// 2.利用new Array()
//var arr1 = new Array(); 创建一个空的数组
// var arr1 = new Array(2); 这个2表示 数组的长度为2 里面有2个空的数组元素
var arr1 = new Array(2, 3); //等价于【2,3】这样写表示里面有2个数组元素时2和3
console.log(arr1);