Java script 中的面向对象1
Java script 中的面向对象
- 对象
对象是Javascript的基本数据类型,对象是一种复合值,将很多的键值对聚合在一起使用。对象可看做是属性的无序集合,每个属性都是一个名/值对。属性名其实是一个字符串。我们可以把对象看做是字符串到值的映射。
- 创建对象
例子代码如下:
<script type="text/javascript" language="JavaScript">
//创建一个对象o 有两个属性 x y
var o={
x:10,//注意:名/值之间用冒号:隔开多个名值对之间用逗号间隔
y:20//整个映射表要用花括号括起来
};
var o1={
}//创建一个空对象
//对象中的值可以引用其他对象的值
var o2={
x:o.x-1,
y:o.y
author:{
fristname:"lisi",
lastname:"zhangsan"
}
}
</script>
- 通过new 创建对象
var o3=new Object();//创建一个空对象和{}一样
var a=new Array();//创建一个空数组和[]一样
var d=new Date();//创建一个表示当前日期的对象
var r=new RegExp("js");//创建一个进行模式模式匹配的RegExp对象
- 原型
每一个对象都是从原型中继承而来的
通过Javascript代码 object.prototype获得对原型对象的引用
通过关键字new和构造函数调用创建的对象的原型都是构造函数的prototype属性的值
因此使用{}创建的对象一样 通过new object()创建的对象也继承来自于Array.prototype,通过new Date()创建的对象的原型就是Date.prototype.
Object.prototype没有原型
4.通过Object.create()创建对象
Object.create()是一个静态的函数,不是提供给某个对象调用的方法。
只需传入所需的的原型对象即可。
var a1=Object.create({x:10,y:12});
二.对象属性的设置
可以通过点.或者方括号[]运算符来取属性的值
注意:方括号内必须是一个计算结果为字符串的表达式
var 0_x=o2.x;
var o_author=02["author"];
同样可以通过这种方式对对象设置属性值
o2.x=10;
o2["y"]=20;
三、函数对象
可以使用function关键字定义一个函数,并为每个函数指定一个函数名,通过函数名来进行调用。在javascript解释执行的时候,函数都是被维护为一个对象,就是函数对象。
function myfunction(a,b){
return a+b;
}
等价于
var myfunction = new Function("a","b","return a+b");
另外
var i = function(a,b){
return a+b;
}(1,2)
这样的写法就是创建完函数后马上执行。
再有,function funcName(){}等价于
var funcName = function(){}
Java script 中的面向对象1的更多相关文章
- Java语言中的面向对象特性总结
Java语言中的面向对象特性 (总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知 ...
- Java语言中的面向对象特性:封装、继承、多态,面向对象的基本思想(总结得不错)
Java语言中的面向对象特性(总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知道jav ...
- Java Script 中 ==(Equal) 和 === (Identity Equal) 的区别和比较算法逻辑
判断两个变量是否相等在任何编程语言中都是非常重要的功能. JavaScript 提供了 == 和 === 两种判断两个变量是否相等的运算符,但我们开始学习的时候 JavaScript 的时候,就被一遍 ...
- Java语言中的面向对象特性
面向对象的基本特征 1.封装性 封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: ◇ 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位( ...
- java Script 中的keyCode 和charCode
其实很长一段时间,我都没有完全弄明白keyCode 和charCode ,自己也认真看过,但是就是理解不透彻,为了防止以后再出现混乱,写篇博客记录一下吧! 首先 在不同的浏览器中,他们有不同的说法哦 ...
- Java Script中常见操作
字符串常见操作:obj.length 长度obj.trim() 移除空白obj.trimLeft()obj.trimRight)obj.charAt(n) 返回字符串中的第n个字符obj.concat ...
- Java Script 第二章.
对象: JavaScript中的所有事物都是对象:字符串,数组,数值,函数..... JavaScript中提供多个内建对象,比如说 String, Date, Array等等.对象只是带有属性和 ...
- Java Script 学习笔记
JS编程习惯类: 1. 命名 著名的变量命名规则 只是因为变量名的语法正确,并不意味着就该使用它们.变量还应遵守以下某条著名的命名规则: Camel 标记法 首字母是小写的,接下来的字母都以大写字符开 ...
- Java中的面向对象
Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释 ...
随机推荐
- weex中UISegmentControl实现及遇到的问题
在最近主导的一个项目中,App端的实现使用了weex.通过近一个月的实践,我们发现如果对于人机交互较少的App,即使较少前端经验的人也能迅速进入开发(当然需要一定时间 才能上手weex).在开发的时候 ...
- day 94 Django学习之django自带的contentType表
Django学习之django自带的contentType表 通过django的contentType表来搞定一个表里面有多个外键的简单处理: 摘自:https://blog.csdn.net/a ...
- QQ开发技术资料集锦
1.GG2013:可在广域网部署运行的QQ高仿版 http://www.cnblogs.com/justnow/category/503400.html 2. 苏飞博客: C#仿QQ皮肤-皮肤控件窗体 ...
- JavaWeb基础—上传与下载
1.上传(不能使用BaseServlet): 上传的作用,略 上传的要求(对表单和Servlet都有要求): 1.必须使用表单,而不能是超链接,method="post" 文件明显 ...
- v$pwfile_user表
SQL> select * from v$pwfile_users;select * from v$pwfile_users; USERNAME SYSDB SYSOP SYSAS------- ...
- windows7 64位机上安装配置CUDA7.5(或8.0)+cudnn5.0操作步骤
按照官网文档 http://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#axzz4TpI4c8v ...
- Linux shell(3)
shell的运算操作: let整数运算 expr整数运算 bc浮点运算 字符串运算 let命令: let命令让BASH shell 执行算数值的操作,使用let,可以比较两个值或执行加减乘除等这样的算 ...
- 并发系列(三)-----volatile
一 简介 volatile关键字是轻量级的synchronized,volatile在并发编程中保证共享变量的可见性,当一个线程修改被volatile修饰的共享变量时,另外一个线程就能读到这个修改的值 ...
- sublime text 安装json插件
1.安装JSON插件(直接安装或在线插件安装均可) 1-1.直接安装 下载安装包https://github.com/dzhibas/SublimePrettyJson,解压缩到Packages目录( ...
- react学习(一)组件
react这个东西,说实话,我刚刚接触一个月不到.感觉这玩意很颠覆我以前的前端开发 比方说,可能,整个项目,并没有一个html文件 比方说,以前我们写前端代码,分的清清楚楚,html里面就是放dom, ...