js object数据类型
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数据类型的更多相关文章
- js常用数据类型(Number,String,undefined,boolean) 引用类型( function,object,null ),其他数据类型( 数组Array,时间Date,正则RegExp ),数组与对象的使用
js常用数据类型 数字类型 | 字符串类型 | 未定义类型 | 布尔类型 typeof()函数查看变量类型 数字类型 Number var a1 = 10; var a2 = 3.66; conso ...
- JavaScript知识 一、JS的数据类型
一.JS的数据类型 1.基本类型 JS共有5大基本类型,分别是: 1)Undefined.他只有一个值:undefined.如果一个变量被定义但是没有给他赋值,那么这个时候系统会默认给这个变量赋值为u ...
- js的数据类型--数字
近期做一些项目的时候发现,自己的js基础还是不够扎实,再看一遍犀牛书,加深自己的理解和印象.所以从这篇文章开始,后面都是关于原生js的一些内容. 这篇文章,我们具体介绍一下js的数据类型其中一种. j ...
- JS基本数据类型&流程控制
JS基本数据类型 number ----- 数值 boolean ----- 布尔值 string ----- 字符串 [x,y] -------数组 undefined ...
- JS基本数据类型和引用数据类型的区别及深浅拷贝
前言 首先我们先来了解一下什么叫栈堆,基本数据类型与引用数据类型 1.栈(stack)和堆(heap)stack为自动分配的内存空间,它由系统自动释放:而heap则是动态分配的内存,大小也不一定会自动 ...
- js之数据类型(对象类型——构造器对象——对象)
JavaScript中除了原始类型,null,undefined之外就是对象了,对象是属性的集合,每个属性都是由键值对(值可以是原始值,比如说是数字,字符串,也可以是对象)构成的.对象又可分为构造器对 ...
- Python--前端基础之JavaScript(JS的引入方式,JS的变量、常量和标识符,JS的数据类型,运算符,流程控制,JavaScript的对象)
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...
- node.js对象数据类型
在这里复习下前端JS的数据类型:前端JS中的数据类型: 1.基本/原生/值类型 string.number.boolean.null.undefined 2.引用/对象类型 ES对象类型:Str ...
- JS中数据类型及原生对象简介
js是一种专门设计用来给网页增加交互性的编程语言,它的技术体系包含了一下几个方面: 1.JavaScript核心语言定义:包括数据类型,变量,常量,运算符,语句等. 2.原生对象和内置对象 3.浏览器 ...
随机推荐
- JPA javax.persistence.TransactionRequiredException
直接说一下解决方案 Dao层,一定要是Dao层. 1 增加Transactional,必须要事务! 2 增加Modifying,告诉jpa这是修改! @Transactional @Modifying ...
- POJ2960 S-Nim 【博弈论】
Description Arthur and his sister Caroll have been playing a game called Nim for some time now. Nim ...
- 江西财经大学第二届程序设计竞赛同步赛 H大时钟 (扩展欧几里得)
链接:https://ac.nowcoder.com/acm/contest/635/H来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...
- redisson整合spring
转: redisson整合spring 转: 原文:http://blog.csdn.net/wang_keng/article/details/73549274 首先讲下什么是Redisson:Re ...
- re模块正则表达式
regular expression / regex / RE 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配.Python 自1.5版本起增加了re 模块,它提供 ...
- 八.django模型系统(二)之常用查询及表关系的实现
Ⅰ.常用查询 1.几个概念 每一个django模型类,都有一个默认的管理器,objects,查询就是依赖于objects管理器进行的(在创建时就被添加了). QuerySet表示数据库中对象的列表( ...
- mysql8.0.15二进制安装
mysql8.0.15二进制安装 今天有幸尝试安装了社区版本的mysql8.0.15,记录下来,供以后方便使用.特此感谢知数堂的叶老师,提供了配置文件的模板. # 第一部分:系统配置 # 1.安装系统 ...
- hadoop记录-Hadoop参数汇总
Hadoop参数汇总 linux参数 以下参数最好优化一下: 文件描述符ulimit -n 用户最大进程 nproc (hbase需要 hbse book) 关闭swap分区 设置合理的预读取缓冲区 ...
- finalize()与PhantomReference学习笔记
众所周知,Java语言提供了自动垃圾回收机制,使得程序员不用考虑自己释放不再使用的内存.既然回收内存的活都让Java自己干了,程序员在这方面能干的事情就不多了.尽管如此,Java也提供了一些让程序员对 ...
- Eclipse - 安装lombok后注解无效
安装 lombok lombok 的安装过程挺简单的,网上已经有很多相关的博客,这里就不在多说了,可以参考这篇:eclipse集成lombok注解不起作用 但是我按照网上的方式安装之后,注解一直不起作 ...