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.浏览器 ...
随机推荐
- CPU监控
题目描述 Bob需要一个程序来监视CPU使用率.这是一个很繁琐的过程,为了让问题更加简单,Bob会慢慢列出今天会在用计算机时做什么事. Bob会干很多事,除了跑暴力程序看视频之外,还会做出去玩玩和用鼠 ...
- 解决pgpool启动报错 ifup[/sbin/ip] doesn't have setuid bit
1.问题出现: 在centos7启动pgpool服务器报错ifup[/sbin/ip] doesn't have setuid bit 2018-11-25 01:14:14: pid 38122: ...
- linux网络性能测试工具ipref安装与使用
一.iperf工具安装 源码包下载地址:https://iperf.fr/iperf-download.php#archlinux 选择对应系统的版本就是解压安装了 完成 测试发现有问题 问题原因:L ...
- axios设置请求拦截和响应拦截
首先我们先创建axios实例 const service = axios.create({ baseURL: url, //是用于请求的服务器 URL timeout: 5000, // 请求超时时间 ...
- Linux系统下rm删除文件后空间没有释放问题解决办法
一.问题描述 今日收到zabbix监控报警,发现生产环境一台服务器的磁盘空间不足,需要进行处理,登录后发现可利用率不足20%,进行相关查看和处理工作:但是操作删除了一些备份文件和日志信息后,查看空间仍 ...
- (八) Usb摄像头描述符解析
目录 Usb摄像头描述符解析 总结 参考资料 打印设备描述符 打印配置描述符 打印接口联合体描述符 打印接口描述符 打印当前设置的额外描述符 代码解析额外的描述符 打印端点描述符 title: Usb ...
- Kubernetes之canal的网络策略(NetworkPolicy)
安装要求: 1.我们这里安装的是3.3的版本.kubernetes的要求: 支持的版本 1.10 1.11 1.12 2.CNI插件需要启用,Calico安装为CNI插件.必须通过传递--networ ...
- 微信小程序 开发文档
官方开发文档: 小程序公众平台 小程序开发者指南 小程序开发者文档 学习资源: 微信:官方入门教程 微信:WeUI 是一套同微信原生视觉体验一致的基础样式库 微信:微信小程序示例 视频: 学堂在线:学 ...
- SOA 和 微服务
正在读 钟华 著的<<企业IT架构转型之道 - 阿里巴巴中台战略思想与架构实战>> 一书, 参考了网上的讨论, 对SOA和微服务有了一些新的认识. 知乎上的讨论: SOA 与 ...
- NPOI读取excel表,如果有公式取出的是公式,想要取数字怎么办?
public static DataTable Import(string strFileName) { DataTable dt = new DataTable(); HSSFWorkbook hs ...