java 学习笔记指路
基础知识
Python转java补充知识
Java中常见的名词解释
前端
【黑马程序员pink老师前端】HTML
【黑马程序员pink老师前端】JavaScript基础大总结
【黑马程序员pink老师前端】JavaScript函数与作用域
【黑马程序员pink老师前端】JavaScript对象
数据库
【黑马程序员数据库】数据库基础大总结
【黑马程序员数据库】数据库引擎
【黑马程序员数据库】数据库索引
SQL编程
【牛客】SQL刷题篇入门篇
【牛客】SQL刷题篇进阶篇
Java 框架
spring框架学习
Mybatis-plus 快速入门
Maven基础
Zookeeper初认识
HTTP简介
Tomcat
Servlet
vue入门
目录
1 对象❤️1.1 创建对象⭐1.1.1 利用字面量创建对象① 对象的调用② 变量、属性、函数、方法总结1.1.2 利用 new Object 创建对象1.1.3 利用构造函数创建对象① 构造函数和对象② new关键字1.2 遍历对象的属性⭐2 内置对象❤️2.1 查文档⭐2.1.1 如何学习对象中的方法3 Math对象❤️1 对象❤️
在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。
对象是由属性和方法组成的:
属性:事物的特征,在对象中用属性来表示(常用名词)方法:事物的行为,在对象中用方法来表示(常用动词)
1.1 创建对象⭐
在 JavaScript 中,现阶段我们可以采用三种方式创建对象(object):
利用字面量创建对象利用 new Object创建对象利用构造函数创建对象
1.1.1 利用字面量创建对象
对象字面量:就是花括号 { } 里面包含了表达这个具体事物(对象)的属性和方法
{ } 里面采取键值对的形式表示
键:相当于属性名值:相当于属性值,可以是任意类型的值(数字类型、字符串类型、布尔类型,函数类型等)
var star = {name : 'pink',age : 18,sex : '男',sayHi : function(){alert('大家好啊~');}};// 多个属性或者方法中间用逗号隔开// 方法冒号后面跟的是一个匿名函数
① 对象的调用
对象里面的属性调用 : 对象.属性名 ,这个小点 . 就理解为“ 的 ”对象里面属性的另一种调用方式 : 对象[‘属性名’],注意方括号里面的属性必须加引号,我们后面会用对象里面的方法调用:对象.方法名() ,注意这个方法名字后面一定加括号console.log(star.name)// 调用名字属性console.log(star['name']) // 调用名字属性star.sayHi(); // 调用 sayHi 方法,注意,一定不要忘记带后面的括号
② 变量、属性、函数、方法总结
变量:单独声明赋值,单独存在属性:对象里面的变量称为属性,不需要声明,用来描述该对象的特征函数:单独存在的,通过==“函数名()”==的方式就可以调用方法:对象里面的函数称为方法,方法不需要声明,使用==“对象.方法名()”==的方式就可以调用,方法用来描述该对象的行为和功能。1.1.2 利用 new Object 创建对象
跟之前的 new Array() 原理一致:var 对象名 = new Object();
使用的格式:对象.属性 = 值
var obj = new Object(); //创建了一个空的对象obj.name = '张三丰';obj.age = 18;obj.sex = '男';obj.sayHi = function() {console.log('hi~');}//1.我们是利用等号赋值的方法添加对象//2.每个属性和方法之间用分号结束console.log(obj.uname);console.log(obj['sex']);obj.sayHi();
1.1.3 利用构造函数创建对象
构造函数 :是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与 new 运算符一起使用。我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。
在 js 中,使用构造函数要时要注意以下两点:
构造函数用于创建某一类对象,其首字母要大写构造函数要和 new 一起使用才有意义
//构造函数的语法格式function 构造函数名() {this.属性 = 值;this.方法 = function() {}}new 构造函数名();
//1. 构造函数名字首字母要大写//2. 构造函数不需要return就可以返回结果//3. 调用构造函数必须使用 new//4. 我们只要new Star() 调用函数就创建了一个对象//5. 我们的属性和方法前面必须加thisfunction Star(uname,age,sex) {this.name = uname;this.age = age;this.sex = sex;this.sing = function(sang){console.log(sang);}}var ldh = new Star('刘德华',18,'男');console.log(typeof ldh) // object对象,调用函数返回的是对象console.log(ldh.name);console.log(ldh['sex']);ldh.sing('冰雨');//把冰雨传给了sangvar zxy = new Star('张学友',19,'男');
构造函数名字首字母要大写函数内的属性和方法前面需要添加 this ,表示当前对象的属性和方法。构造函数中不需要 return 返回结果。当我们创建对象的时候,必须用 new 来调用构造函数。
① 构造函数和对象
构造函数,如 Stars(),抽象了对象的公共部分,封装到了函数里面,它泛指某一大类(class)创建对象,如 new Stars(),特指某一个,通过 new 关键字创建对象的过程我们也称为对象实例化② new关键字
new 在执行时会做四件事:
在内存中创建一个新的空对象。让 this 指向这个新的对象。执行构造函数里面的代码,给这个新对象添加属性和方法返回这个新对象(所以构造函数里面不需要return)
1.2 遍历对象的属性⭐
for...in
语句用于对数组或者对象的属性进行循环操作
语法如下:
for(变量 in 对象名字){// 在此执行代码}
语法中的变量是自定义的,它需要符合命名规范,通常我们会将这个变量写为 k 或者 key。
for(var k in obj) {console.log(k);//这里的 k 是属性名console.log(obj[k]);//这里的 obj[k] 是属性值}
var obj = {name: '秦sir',age: 18,sex: '男',fn:function() {};};console.log(obj.name);console.log(obj.age);console.log(obj.sex);//for in 遍历我们的对象//for (变量 in 对象){}//我们使用for in 里面的变量 我们喜欢写k 或者keyfor(var k in obj){console.log(k); // k 变量 输出得到的是属性名console.log(obj[k]); // obj[k] 得到的是属性值}
2 内置对象❤️
JavaScript 中的对象分为3种:自定义对象 、内置对象、 浏览器对象
内置对象就是指 JS 语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能
JavaScript 提供了多个内置对象:Math、 Date 、Array、String等
2.1 查文档⭐
学习一个内置对象的使用,只要学会其常用成员的使用即可,我们可以通过查文档学习,可以通过MDN/W3C来查询
MDN: /zh-CN/
2.1.1 如何学习对象中的方法
查阅该方法的功能
查看里面参数的意义和类型
查看返回值的意义和类型
通过 demo 进行测试
3 Math对象❤️
Math 对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整、最大值等)可以使用 Math 中的成员。
// Math数学对象,不是一个构造函数,所以我们不需要new 来调用,而是直接使用里面的属性和方法即可Math.PI // 圆周率Math.floor() // 向下取整Math.ceil() // 向上取整Math.round() // 四舍五入版 就近取整 注意 -3.5 结果是 -3 Math.abs() // 绝对值Math.max()/Math.min()// 求最大和最小值
注意:上面的方法必须带括号
console.log(Math.PI); console.log(Math.max(1,99,3)); // 99