Java script 中的面向对象

  1. 对象

    对象是Javascript的基本数据类型,对象是一种复合值,将很多的键值对聚合在一起使用。对象可看做是属性的无序集合,每个属性都是一个名/值对。属性名其实是一个字符串。我们可以把对象看做是字符串到值的映射。

  1. 创建对象

    例子代码如下:

<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>

  1. 通过new 创建对象

    var o3=new Object();//创建一个空对象和{}一样

var a=new Array();//创建一个空数组和[]一样

var d=new Date();//创建一个表示当前日期的对象

var r=new RegExp("js");//创建一个进行模式模式匹配的RegExp对象

  1. 原型

    每一个对象都是从原型中继承而来的

    通过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的更多相关文章

  1. Java语言中的面向对象特性总结

    Java语言中的面向对象特性 (总结得不错) [课前思考]  1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类?  2. 面向对象编程的特性有哪三个?它们各自又有哪些特性?  3. 你知 ...

  2. Java语言中的面向对象特性:封装、继承、多态,面向对象的基本思想(总结得不错)

    Java语言中的面向对象特性(总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知道jav ...

  3. Java Script 中 ==(Equal) 和 === (Identity Equal) 的区别和比较算法逻辑

    判断两个变量是否相等在任何编程语言中都是非常重要的功能. JavaScript 提供了 == 和 === 两种判断两个变量是否相等的运算符,但我们开始学习的时候 JavaScript 的时候,就被一遍 ...

  4. Java语言中的面向对象特性

    面向对象的基本特征 1.封装性 封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: ◇ 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位( ...

  5. java Script 中的keyCode 和charCode

    其实很长一段时间,我都没有完全弄明白keyCode 和charCode ,自己也认真看过,但是就是理解不透彻,为了防止以后再出现混乱,写篇博客记录一下吧! 首先  在不同的浏览器中,他们有不同的说法哦 ...

  6. Java Script中常见操作

    字符串常见操作:obj.length 长度obj.trim() 移除空白obj.trimLeft()obj.trimRight)obj.charAt(n) 返回字符串中的第n个字符obj.concat ...

  7. Java Script 第二章.

    对象: JavaScript中的所有事物都是对象:字符串,数组,数值,函数..... JavaScript中提供多个内建对象,比如说 String,  Date,  Array等等.对象只是带有属性和 ...

  8. Java Script 学习笔记

    JS编程习惯类: 1. 命名 著名的变量命名规则 只是因为变量名的语法正确,并不意味着就该使用它们.变量还应遵守以下某条著名的命名规则: Camel 标记法 首字母是小写的,接下来的字母都以大写字符开 ...

  9. Java中的面向对象

    Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释 ...

随机推荐

  1. 图片 和 base64 互转

    图片转base64 NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:urlStr]]; UIImage *img = ...

  2. 使用Jquery Viewer 展示图片信息

    <!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" ...

  3. Mac 使用.bash_profile

    1.打开terminal(终端) 2.open .bash_profile (打开.bash_profile文件,如果文件不存在就  创建文件:touch .bash_profile  编辑文件:op ...

  4. 树莓派3B+学习笔记:1、安装官方系统

    1.登录树莓派官方网站www.raspberrypi.org,点击Downloads: 2.点击NOOBS: 3.选择下载方式,可以选择下载BT种子或直接下载,这里我用迅雷直接下载,下载速度还是很快的 ...

  5. matplotlib雷达图

    用matplotlib画雷达图,网上流传的版本其实都是官网的一个例子.但是那个例子太复杂,而且它封装了几个类,让人难以一眼看出其本质. 我给出一个简单的解决方法,没有任何封装.作本文的原因,是为了回答 ...

  6. Kubernetes学习之路(二)之ETCD集群二进制部署

    ETCD集群部署 所有持久化的状态信息以KV的形式存储在ETCD中.类似zookeeper,提供分布式协调服务.之所以说kubenetes各个组件是无状态的,就是因为其中把数据都存放在ETCD中.由于 ...

  7. TMS320VC5509串口通信

    1. 串口通信使用MCBSP外设的DX1,DRA引脚 很多同学喜欢把这个MCBSP驱动音频芯片TLV320AIC23,同时也作为串口,那么一般用的拨码开关去选择,反正自己看着拨一下 2. 遇到的一个问 ...

  8. js 日期,时间函数 及相关运算大全

    一.在js中如何比较两个时间字符串的大小 方法一: function CompareDate(d1,d2){     return ((new Date(d1.replace(/-/g,"/ ...

  9. Oracle10g 客户端安装与配置说明

    1:百度文库 http://wenku.baidu.com/link?url=bA-FrFMaqxkoifwz-oiPeU5QmMVVJyy8rYDBryhTUCJywpkDS0VNJcObCIM8l ...

  10. 开源项目CIIP(企业信息管理系统框架).2018.1.0910版更新介绍-上周工作总结

    又狂撸了一周的代码.简化了0904版本的多数操作. 上一次更新时,总共需要10步,这次简化成3步.嗯嗯,自我感觉不错. 重要的:在创建项目时,可以选择常用模块啦! 第一步:启动CIIP.Designe ...