JS笔记

1.以后遇到用构造函数创建对象就用NEW

2.用构造函数创建对象语法:
var obj1 = new Object();//创建一个空对象
var obj2 = new Object({ name : "zs" });//创建有内容的对象
场景:了解即可,底层,{} => new Object(),{ 键值对 } => new Object({ name : "zs" })
以后直接使用键值对的那个字面量创建对象即可

3.取值和赋值
1. 赋值:对象名.属性名 = 值;
1.2 属性存在的情况 => 修改
1.3 属性不存在的形况 => 添加

2. 取值:对象名.属性名
2.2 属性存在的情况下 => 直接取值
2.2 属性不存在的情况下 => undefined

4.批量创建对象(两种方式)
1. 工厂函数 通过传参的形式,不用写死对象里的属值。
1.1 创建一个新对象
1.2 给这个对象添加属性/方法
1.3 返回这个对象

2. 自定义构造函数★

5. new 做了4件事
1. 创建一个新对象
2. this指向了这个新对象 (新对象就有了属性)
3. 执行构造函数 (给对象添加属性值和方法)
4. 返回这个对象
构造函数的作用:添加属性和方法 实例化

6. 查看数据类型
1. typeof语法 : typeof 要查询的变量
场景: 只能查询简单类型,复杂类型分不清.
2. instanceof语法 :查询的变量 instanceof 构造函数(Number、Array、Object)
场景:判断返回一个布尔,类型一致返回true,反之false.
3.constructor构造器 语法:查询的变量.constructor
场景: 直接获取该变量是什么类型.

7. 四种创建对象方式
1. 单独创建两种
1.1 字面量创建(推荐使用)键值对
1.2 构造函数创建对象 (底层)

2. 批量创建的两种方式
2.1 工厂函数(需要返回对象)
2.2 自定义构造函数

8. 点语法和[]语法 (获取对象属性值)
1.点语法结构:对象名.属性名
2.[]结构:对象名[属性名字符串]

9. 遍历对象
语法: for ...in for(var key in 对象名){}
属性名:key,key相当于对象的每个属性名
属性值:对象名[key],相当于每个对象的属性值

10.判断这个属性是否是对象里的属性
结构:if( 属性名字符串 in 对象名){}

11.值类型和引用类型
1. 简单数据类型:number、string、boolean、undefined、null
变量在存储简单数据类型的时候,寸的是值本身(值类型)
2. 复杂数据类型: Array、function、Object
变量在存储复杂数据类型的时候,寸的是引用,也叫地址(类型)

JavaScipt第四天笔记的更多相关文章

  1. 安卓第十四天笔记-内容提供者(ContentProvider)

    安卓第十四天笔记-内容提供者(ContentProvider) ContentProvider--内容提供者 1.ContentProvider简介 ContentProvider是不同应用程序之间进 ...

  2. 安卓第四天笔记-Sqlite

    安卓第四天笔记-Sqlite 1.数据库的创建运行与更新 1.1.创建一个类继承SqliteOpenHelper 1.2.创建构造方法 /** * 数据库创建类 * @author 刘楠 * * 20 ...

  3. 《APUE》第四章笔记(2)

    下面介绍对stat结构的各个成员的操作函数. 先贴个stat结构的图: access函数: #include <unistd.h> int access(const char *pathn ...

  4. 《APUE》第四章笔记(1)

    1.引言 本章介绍文件系统的特征和文件的性质.从stat函数开始,逐个说明stat结构的每一个成员以了解文件的所有属性.在此过程中,还将会说明修改这些属性的各个函数,并更详细地查看UNIX文件系统的结 ...

  5. #Python编程从入门到实践#第四章笔记

    #Python编程从入门到实践#第四章笔记   操作列表 ​​​1.遍历列表 使用for循环,遍历values列表 for value in values: print(value) 2.数字列表 使 ...

  6. Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介)

    原文:Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介) 版权声明:本文为博主原创文章,遵循CC 4.0 BY ...

  7. iOS阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

  8. C#语言和SQL Server第十三 十四章笔记

    十三章  使用ADO.NET访问数据库 十四章使用ADO.NET查询和操作数据库 十三章:                                                       ...

  9. iOS 阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

随机推荐

  1. ionic app 监听网络功能

    安装cordova插件: cordova plugin add cordova-plugin-network-information 在app.js 的run()里面的function()注入$cor ...

  2. 从无到有构建vue实战项目(八)

    十六.vue-lazyload的使用 首先,我们需要下载vue-lazyload包: npm i vue-lazyload -S 下载好之后,我们将它引入到自己的项目: //main.js //引入图 ...

  3. 六大设计原则(C#)

    为什么要有设计原则,我觉得一张图片就可以解释这一切 一.单一职责原则(SRP) 对于一个类而言,应该只有一个发生变化的原因.(单一职责不仅仅是指类) 如果一个模块需要修改,它肯定是有原因的,除此原因之 ...

  4. Linux的权限属性信息1到10位分别什么意思

    要设置权限,就需要知道文件的一些基本属性和权限的分配规则. 在Linux中,ls命令常用来查看文件的属性,用于显示文件的文件名和相关属性. #ls -l 路径          [ls -l  等价于 ...

  5. Delphi - cxGrid内容xlsx、xls、csv格式导出

    .xls格式导出,uses中添加cxGridExportLink 代码如下: function SaveToExcel(gridMain: TcxGrid; FileName: string): st ...

  6. CodeForces - 445B - DZY Loves Chemistry-转化问题

    传送门:http://codeforces.com/problemset/problem/445/B 参考:https://blog.csdn.net/littlewhite520/article/d ...

  7. Gym 101964 题解

    B:Broken Watch (别问,问就是队友写的) 代码: import java.awt.List; import java.io.BufferedInputStream; import jav ...

  8. bzoj3032 七夕祭题解

    题面 TYVJ七夕祭和11区的夏祭的形式很像.矩形的祭典会场由N排M列共计N×M个摊点组成.虽然摊点种类繁多,不过cl只对其中的一部分摊点感兴趣,比如章鱼烧.苹果糖.棉花糖.射的屋--什么的.Vani ...

  9. JAVA之学生信息管理系统

    StudentManager系统 系统的数据: 变量 stunumber 为字符串类型 String,用于存储学生的学号(有 8 位数字组成) 变量 name 为字符串类型 String,用于存储学生 ...

  10. 把windows下的压缩包放到Linux目录下去

    今天在自学redis时出现了问题,因为楼主linux也是空白纸,前几天安装了Linux后就只会基本的命令,其他的一概不通啊,所以当redis要在Linux中用时就傻眼了,索性就在windows中下载了 ...