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. 我们的属性和方法前面必须加this
function 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 在执行时会做四件事:

  1. 在内存中创建一个新的空对象。
  2. 让 this 指向这个新的对象。
  3. 执行构造函数里面的代码,给这个新对象添加属性和方法
  4. 返回这个新对象(所以构造函数里面不需要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 或者key
for(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: https://developer.mozilla.org/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

【黑马程序员pink老师前端】JavaScript对象相关推荐

  1. 【黑马程序员pink老师前端】网页相关概念

    java 学习笔记指路 基础知识 Python转java补充知识 Java中常见的名词解释 前端 [黑马程序员pink老师前端]HTML [黑马程序员pink老师前端]JavaScript基础大总结 ...

  2. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(一)

    一.计算机编程基础 编程语言 编程语言与标记语言的区别 编程语言 有很强的逻辑和行为能力,有if else等具有逻辑性和行为能力的指令,主动 标记语言(html)不用于向计算机发出指令,常用于格式化和 ...

  3. CSS 学习笔记总结(借鉴黑马程序员pink老师前端入门)

    1. CSS 简介 CSS 的主要使用场景就是美化网页,布局页面的 1.1 HTML 的局限性 说起 HTML ,他只关注内容的语义.比如 <h1> 表明这是一个大标题,<p> ...

  4. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(jQuery1)

    jQuery概述 JavaScript库 jQuery概述 jQuery优点 jQuery的基本使用 入口函数 jQuery的顶级对象$ DOM对象和jQuery对象 DOM对象和jQuery对象相互 ...

  5. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(DOM)

    API DOM DOM简介 什么是DOM DOM树 获取元素 getElementById获取元素 得到一个元素对象object 用dir打印,还可以得到它的属性 div#time getElemen ...

  6. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(三)

    九.作用域 JS作用域 全局变量和局部变量 JS没有块级作用域 作用域链 十.JS预解析 预解析 十一.JS对象 利用对象 字面量 创建对象 变量属性方法函数的区别 利用 new Object 创建对 ...

  7. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程

    计算机编程基础 编程语言 计算机基础 初识JavaScript 初始JavaScript 浏览器执行JS过程 JS三部分组成

  8. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(BOM)

    BOM浏览器对象模型 BOM概述 window对象的常见事件

  9. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(DOM,事件高级)

    DOM 节点操作 父节点和子节点 第一个子元素和最后一个子元素 新浪下拉菜单案例 兄弟节点 创建和添加节点 简单版发布留言案例 删除节点 删除留言案例 复制节点 动态生成表格-创建学生数据 动态生成表 ...

最新文章

  1. oracle, group by, having, where
  2. Xcode中的NSLog详解
  3. php周计划表_PHP学习计划书
  4. java 模型 数据库_数据库表与java域模型之间的mapping和自动生成(基于mybatis)
  5. python 爬取直播弹幕视频_python爬取斗鱼B总直播弹幕
  6. 【ABAP】通过SE30来测试程序的执行效率
  7. docker如何实现重新打tag并删除原tag的镜像([仓库名: tag] 可以查询到指定id的镜像,同一个id镜像能有多个[仓库名: tag])(增加\删除镜像仓库:标签)
  8. springboot 单测加入参数_Spring Boot集成Elasticsearch实战分享
  9. 股票代码前面为0,补齐6位数
  10. 云栖大会展出两款一体机,搭载新一代无影融合架构
  11. 专题导读:学术大数据
  12. VSCODE 10个高效开发插件
  13. android build获取ext,顶级build.gradle文件中的ext属性
  14. CentOS 6.5 安装 Python3
  15. NYOJ975 - 关于521
  16. 【视频检测】FlowNet: Learning Optical Flow with Convolutional Networks
  17. 基于单片机的防盗报警监控系统设计(#0401)
  18. 在面试中脱颖而出的流程全解
  19. 吐鲁番市谷歌高清卫星地图下载
  20. 设置excel中数据有效性不被复制黏贴破坏

热门文章

  1. zheng 项目(一)之从 zheng-common 开始
  2. matlab施加阶跃相应,典型环节与及其阶跃响应
  3. 编程实战:C语言制作垃圾回收器
  4. 凤凰x86无限重启_凤凰系统启动不了,一直在出..................
  5. 人机交互——人机交互设备
  6. java中的逆变、协变、不变概念讲解转载自http://www.cnblogs.com/en-heng/p/5041124.html,感谢编程路上的前辈们!
  7. 以太坊源码分析(53)以太坊测试网络Clique_PoA介绍
  8. OpenGL3.3法线贴图
  9. linux命令之一 diff(2) 命令用法
  10. pyinstaller打包-py获取依赖文件的绝对路径方法