1.object数据类型,[可以]认为JavaScript中顶级数据类型.在JavaScript绝大多数
高级类型对象都是object类型

2.如何创建一个object类型对象

1) 通过调用Object内置构造函数,创建一个object类型对象
2) 通过JSON格式,创建一个object类型对象 {属性名:值,函数名:function(){}}
3) 通过自定义构造函数,创建一个object类型对象

3.如何区分普通函数与自定义构造函数

通过调用形式,决定当前函数是普通函数还是构造函数
普通函数调用形式: 对象.函数();
构造函数调用形式: var obj=new 函数();

在Java中方法内部的this的指向与JavaScript中函数内部this是一样
1)在构造方法中,this指的当前创建的实例对象
2)在普通方法中,this指的调用当前方法的实例对象

4.object类型对象的特点

因为JavaScript是弱类型编程语言,没有类文件的约束
所以object类型对象可以在创建后,任意添加属性和函数

5.如何为object类型对象添加属性函数:

1)object对象中[属性名称]都是字符串类型
2)添加属性格式
object类型对象['属性名']=值;
object类型对象.属性名 = 值;

3)移除属性格式
delete object类型对象.属性名;
delete object类型对象["属性名"];

6.动态指定函数的调用对象----------> 代码快速复用(封装商业价值)

1) 函数类型对象.call(调用对象,实参1,实参2...);
2) 函数类型对象.apply(调用对象,[实参1,实参2...]);
Method.inovke(调用对象,[实参,实参])

7.原型属性----prototype[重点]

1) 所有的[函数类型对象],都自动分配一个属性(prototype)
2) 这个属性(prototype)成为原型属性,由这个属性管理对象成为[原型对象]
3) 这个属性(prototype)就相当于Java类中 static final属性
4) 由当前构造函数生成的所有实例对象,都可以使用当前构造函数中prototype
指定的对象中属性,但是只能用,不能修改
5) 原型对象内容,只能由[函数类型对象]通过prototype.属性方式进行修改
6) JavaScript自动为prototype属性分配一个默认的对象,这个对象就被成为原型对象
7) 函数类型对象.prototype.属性名 ,对原型对象属性进行操作
函数类型对象.prototype = 对象, 改变管理原型对象引用地址

三.JavaScript5.0 继承实现

1.[继承]: 资源共享,只要能实现资源共享都可以认为继承体现.
2.JavaScript5.0继承: 通过[构造函数]
3.JavaScript5.0继承实现细节:
1) 通过原型属性
2) 通过call或则apply

四.JavaScript5.0中 callee属性

1.[arguments属性对象]拥有一个属性[callee] arguments.callee
2.callee属性相当于一个指针.永远[指向函数在内存存储位置]
****callee相当于常量(final),callee只要生成永远指向它遇到一个函数在内存地址

五.数组 Array

1.JavaScript5.0对于数组定义;
1)JavaScript5.0数组等同于Java中List集合

2.JavaScript5.0数组特征:
1)声明数组时,不需要指定数组中最大能够存储的数据个数
在JavaScript中不限制数组保存的数据个数
2)数组同时保存多个不同的数据类型的数据

3.如何声明JavaScript5.0数组

1) 可以使用一个[]声明数组
var myArray =[];
var myArray2 =[10,20,30]

2) 可以使用JavaScript提供内置构造函数(new Array())创建数组
var myArray = new Array();

4. JavaScript5.0数组下标
1) 阿拉伯数字 ,从0开始
2) 字符串

5. JavaScript5.0数组常用专有函数

1.push(数据1,数据2,数据3):可以向数组对象一次添加多个数据
2.pop(): 每次执行时,将数组对象中最后一个为保存的数据进行删除
3.length: 返回当前数组对象保存数据个数
-------------------------------------------------------------------------------------
JavaScript应用篇

一.JavaScript应用:
JavaScript[定位]浏览器内存中Dom对象,并对Dom对象中属性进行设置

二.Dom对象:
1.浏览器将加载html标签,当做一种数据类型.
2.浏览器加载某一个html标签时,会为当前这个标签生成一个引用对象.
这个引用对象就是DOM对象
3.浏览器根据标签声明顺序,在内存中以树型结构方式存储所有的DOM对象
4.可以通过修改DOM对象属性,来影响对应的标签中属性变化

三.如何定位浏览器内存中Dom对象

1.根据[id属性值],定位浏览器内存中第一个满足条件的DOM对象
var domObj = document.getElementById("id属性值");
*****<body></body>对应应用对象 document

2.根据[name属性值],定位浏览器内存中所有具有相同name的Dom对象
var domObjArray = document.getElementsByName("name属性值");

3.根据标签类型名称,定位浏览器内存中所有具有相同标签类型名称DOM对象

var domObjArray=document.getElementsByTagName("标签类型名称");

四.HTML标签中监听属性

1.监听属性定义
监听属性主要监控用户使用鼠标和键盘对当前标签进行操作,同时也可以对
浏览器特定行为进行监控

2.监听属性分类:

1) 鼠标操作行为:
onclick: 用户是否使用鼠标单击标签
ondbclick: 用户是否使用鼠标双击标签
onchange : 用户是否使用鼠标改变下拉列表选中项
onmouseover:用户是否将鼠标悬停在当前标签上方
onmouseout :用户是否将鼠标从当前标签上方移开
onfocus : 用户是否通过鼠标将光标设置在当前标签上
onblur : 当前标签是否失去了光标

2) 键盘操作行为:
onkeydown: 用户是否按下键盘上某一个按键
onkeyup : 用户是否松开了键盘上某一个按键
3) 浏览器加载行为:

onload: 主要在body标签设置,监控浏览器是否将
body标签进行加载完毕

3.监听属性作用:
监听属性如果发现了用户的操作行为时,自动调用对应JavaScript
函数进行处理
onclick = "处理函数()"

4.如何将监听属性与处理函数进行绑定:
1) 在Html标签内部,通过 [监听属性 = "处理函数名()";]
**** 一次只能为一个html标签进行监听属性与处理函数绑定

2) 一次为多个html标签设置监听属性与处理函数进行绑定

domObj.监听属性 = 处理函数引用对象名;

js object数据类型的更多相关文章

  1. js常用数据类型(Number,String,undefined,boolean) 引用类型( function,object,null ),其他数据类型( 数组Array,时间Date,正则RegExp ),数组与对象的使用

    js常用数据类型 数字类型 | 字符串类型 | 未定义类型 | 布尔类型 typeof()函数查看变量类型 数字类型  Number var a1 = 10; var a2 = 3.66; conso ...

  2. JavaScript知识 一、JS的数据类型

    一.JS的数据类型 1.基本类型 JS共有5大基本类型,分别是: 1)Undefined.他只有一个值:undefined.如果一个变量被定义但是没有给他赋值,那么这个时候系统会默认给这个变量赋值为u ...

  3. js的数据类型--数字

    近期做一些项目的时候发现,自己的js基础还是不够扎实,再看一遍犀牛书,加深自己的理解和印象.所以从这篇文章开始,后面都是关于原生js的一些内容. 这篇文章,我们具体介绍一下js的数据类型其中一种. j ...

  4. JS基本数据类型&流程控制

    JS基本数据类型 number     -----  数值 boolean    -----  布尔值 string     -----  字符串 [x,y] -------数组 undefined  ...

  5. JS基本数据类型和引用数据类型的区别及深浅拷贝

    前言 首先我们先来了解一下什么叫栈堆,基本数据类型与引用数据类型 1.栈(stack)和堆(heap)stack为自动分配的内存空间,它由系统自动释放:而heap则是动态分配的内存,大小也不一定会自动 ...

  6. js之数据类型(对象类型——构造器对象——对象)

    JavaScript中除了原始类型,null,undefined之外就是对象了,对象是属性的集合,每个属性都是由键值对(值可以是原始值,比如说是数字,字符串,也可以是对象)构成的.对象又可分为构造器对 ...

  7. Python--前端基础之JavaScript(JS的引入方式,JS的变量、常量和标识符,JS的数据类型,运算符,流程控制,JavaScript的对象)

    JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...

  8. node.js对象数据类型

    在这里复习下前端JS的数据类型:前端JS中的数据类型: 1.基本/原生/值类型 string.number.boolean.null.undefined 2.引用/对象类型    ES对象类型:Str ...

  9. JS中数据类型及原生对象简介

    js是一种专门设计用来给网页增加交互性的编程语言,它的技术体系包含了一下几个方面: 1.JavaScript核心语言定义:包括数据类型,变量,常量,运算符,语句等. 2.原生对象和内置对象 3.浏览器 ...

随机推荐

  1. promise和setTimeout执行顺序的问题

    提出问题,问题代码为 setTimeout(function(){console.log(1)},0); new Promise(function(resolve){ console.log(2) f ...

  2. EOF输入

    EOF是一个计算机术语,为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取.资料源通常称为档案或串流.通常在文本的最后存在此字符表示资料结束.是int类型的宏定义,它扩展为负整数 ...

  3. zabbix模板化监控

    zabbix模板化监控 1. 实验简述 在zabbix监控中,有很多组的概念,具体有以下几种: 1. 主机和主机组,相同类型/应用的主机,可以归属于同一个主机组 2. item和application ...

  4. 【tensorflow】学习笔记

    1.tensorflow中dynamic_rnn和rnn有什么区别?    在tensorflow中没有找到rnn这个方法难道是废弃掉了? rnn是静态图,比如有10个时间序列,那么它将全部展开,并且 ...

  5. (Python)PO设计模式

    无规矩不成方圆.编写代码也是,如果没有大概的框架,管理代码将会是一件很头疼的事. 先看看笔者以前写的python脚本: 如果只有一个用例,这样看着好像挺整洁的.但是当用例越来越多后,如果元素定位发生了 ...

  6. 【转】Redis学习笔记(四)如何用Redis实现分布式锁(1)—— 单机版

    原文地址:http://bridgeforyou.cn/2018/09/01/Redis-Dsitributed-Lock-1/ 为什么要使用分布式锁 这个问题,可以分为两个问题来回答: 为什么要使用 ...

  7. numpy&pandas补充常用示例

    Numpy [数组切片] In [115]: a = np.arange(12).reshape((3,4)) In [116]: a Out[116]: array([[ 0, 1, 2, 3], ...

  8. [Deep Learning] 正则化

    在总结正则化(Regularization)之前,我们先谈一谈正则化是什么,为什么要正则化. 个人认为正则化这个字眼有点太过抽象和宽泛,其实正则化的本质很简单,就是对某一问题加以先验的限制或约束以达到 ...

  9. 最小生成树(kruskal算法)

    首先明确三个概念: 1.最小生成树的特点? 答:假设某个连通网络由n个顶点组成,则其生成树必含n个顶点和n-1条边,而最小生成树的n-1条有个要求:总和最小. 2.并查集的运用? 答:在该问题中,首先 ...

  10. python—shutil模块

    该模块拥有许多文件或文件的删除.移动.复制.重命名等功能. 1.copy():复制文件 格式:shutil.copy(来源文件,目标地址) 返回值:返回复制之后的路径 2.copy2():复制文件和状 ...