Java script 中的面向对象1

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(){}

?

?

?

?

?

?

?

?

?

?

时间: 2024-12-23 23:38:52

Java script 中的面向对象1的相关文章

java学习中,面向对象的三大特性:封装、继承、多态 以及 super关键字和方法的重写(java 学习中的小记录)

java学习中,面向对象的三大特性:封装.继承.多态 以及 super关键字和方法的重写(java 学习中的小记录) 作者:王可利(Star·星星) 封装     权限修饰符:public 公共的,private 私有的     封装的步骤:          1.使用private 修饰需要封装的成员变量.          2.提供一个公开的方法设置或者访问私有的属性              设置 通过set方法,命名格式:     set属性名();  属性的首字母要大写 访问 通过ge

Java语言中的面向对象特性

1.1 面向对象的基本概念  面向对象的基本思想  面向对象是一种新兴的程序设计方法,或者是一种新的程序设计规范(paradigm),其基本思想是使用对象.类.继承.封装.消息等基本概念来进行程序设计.从现实世界中客观存在的事物(即对象)出发来构造软件系统,并且在系统构造中尽可能运用人类的自然思维方式.开发一个软件是为了解决某些问题,这些问题所涉及的业务范围称作该软件的问题域.其应用领域不仅仅是软件,还有计算机体系结构和人工智能等. 1. 对象的基本概念  对象是系统中用来描述客观事物的一个实体

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

[课前思考]  1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类?  2. 面向对象编程的特性有哪三个?它们各自又有哪些特性?  3. 你知道java语言在面向对象编程方面有何独特的特点吗? 难点:  1. 理解方法重载和方法重写,不要混淆了两者的使用.  2. 类变量和类方法的使用.  3. 接口的使用. 3.1 面向对象技术基础 http://hovertree.com/menu/java/ 3.1.1 面向对象的基本概念  面向对象的基本思想  面向对象是一种新兴的程序设计方

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

判断两个变量是否相等在任何编程语言中都是非常重要的功能. JavaScript 提供了 == 和 === 两种判断两个变量是否相等的运算符,但我们开始学习的时候 JavaScript 的时候,就被一遍又一遍的告知: === 要求变量的类型和值均相等,才能返回true. 使用 === 来避免因JavaScript 类型转换带来的问题. 这样增加了 JavaScript 语法的灵活性但是也带来很多头疼的问题: 使用 ==/!=是 ===/!== 来判断两个变量是否相等? 为什么,JS 编码推荐使用

java Script 中的keyCode 和charCode

其实很长一段时间,我都没有完全弄明白keyCode 和charCode ,自己也认真看过,但是就是理解不透彻,为了防止以后再出现混乱,写篇博客记录一下吧! 首先  在不同的浏览器中,他们有不同的说法哦. IE   keyCode  IE浏览器中event对象的属性(方法), 类型:Integer      可读写 描述:对于keypress事件,指示按下的键的Unicode字符;对于keyup\keydown 事件,指示按下的键盘是数字表示键. /*获取键盘的keycode 值*/       

Java Script中的Node

nodeType属性共有12种可取值,其中仅有3种具有实用价值. Element元素节点的nodeType属性值是1. attr属性节点的nodeType属性值是2. text文本节点的nodeType属性值是3. 使用nodeType属性可对指定的节点类型进行操作. Element继承了Node类,也就是说Element是Node多种类型中的一种,即当NodeType为1时Node即为ElementNode,另外Element扩展了Node,Element拥有id.class.children

黑马程序员【Java中的面向对象】

Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释,什么是对象?万物皆对象!够霸气吧,当时的面向对象思想对我来说还是挺崩溃的,什么继承多态啊!经过了无数的联系项目的书写,终于对面向对象有了一定的理解,现在刚好在java的学习中再度重温面向对象,那么就将我眼中的面向对象写出来分享给大家. 说到面向对象,我们就不得不提一下他的三大特性,继承封装和多态.

好程序员Java学习路线分享JS中的面向对象

好程序员Java学习路线分享JS中的面向对象,在JS中,一般情况下我们都是直接写函数,直接调用,但是发现JS中也有new关键字,那么new关键字作为创建对象的关键字,给我们的感觉就是在JS中可以定义一个类,然后用new创建对象,那么在JS中如何做呢?我们先看如下案例,下面的案例是写一个简单的喷泉效果的. window.onload = function(){ // 创建一个画布对象var canvas = document.createElement("canvas");// 设置大小

如何理解并学习javascript中的面向对象(OOP) [转]

如果你想让你的javascript代码变得更加优美,性能更加卓越.或者,你想像jQuery的作者一样,写出属于自己优秀的类库(哪怕是基于 jquery的插件).那么,你请务必要学习javascript面向对象,否则你无法更灵活的使用javascript这门语言. 什么事闭包?到底什么是原型?(知道闭包和原型的,就算得上是javascript的高手了.但真正能够理解,并且灵活运用的人并不多)到底该如何学习javascript中的面向对象呢?在javascript这么语言正如日中天,相信不少人正在为