第一个javascript prototype
写完发觉javascript中的OO也是如此的令人happy
有人这样比喻prototype,说它就像JAVA,jquery就像ruby
今天第一次真正接触这个东东,还没有搞清它的精髓...
来日方长,总有一天会征服prototype,jquery的...
今年22岁,最多也只能写400行JAVASCRIPT
何时才能写到5000行JAVASCRIPT,
是个长远的目标啊....
下面是源码
-----------------------
<html>
<script type="text/javascript">
/*
person这个函数其实就是创建了一个类
这个函数相当于一个构造函数,
初始化name和sex属性...
这里的this指的就是person这个对象
*/
function person(name,sex){
this.name=name;
this.sex=sex;
}
/*
利用prototype属性添加新的属性address,并为其赋值
*/
person.prototype.address="湖北襄樊";
/*
利用prototype属性添加新的方法speak
*/
person.prototype.speak = function() {
return "我讲的是普通话";
}
/*
同样是new关键字创建一个对象myself,给构造函数传两个参数
然后可以输出创建的这个对象的相关属性和方法,查看相关信息
*/
var myself=new person("陈伟","男");
var mix="我的名字叫:"+myself.name;
mix+="\n我的性别是:"+myself.sex;
mix+="\n我的住址是:"+myself.address;
mix+="\n我讲的话:"+myself.speak();
alert(mix);
</script>
</html>
分享到:
相关推荐
我们已经在第一章中使用prototype属性模拟类和继承的实现。 prototype属性本质上还是一个JavaScript对象。 并且每个函数都有一个默认的prototype属性。 如果这个函数被用在创建自定义对象的场景中,我们称这个函数为...
- **first**:获取数组的第一个元素。 - **flatten**:扁平化多维数组。 - **from**:从现有数组创建新数组。 - **indexOf**:查找元素在数组中的索引。 - **inspect**:生成数组的字符串表示。 - **last**:获取...
2.Function.prototype.bindAsEventListener:与bind类似,但同时确保事件处理函数的事件对象作为第一个参数传递。 五、数组操作 1.Array.prototype.each:遍历数组并执行指定函数,类似于forEach。 2.Array....
`Try.these()`尝试执行一系列函数,直到找到第一个不抛出异常的函数并返回其结果。 1.4. Ajax对象 Prototype库中的Ajax模块提供了处理异步HTTP请求的能力,包括: 1.4.1. `Ajax.Request`类 这是一个基础的Ajax请求...
在JavaScript中,每个函数都有一个`prototype`属性,这个属性是一个对象,当创建一个新的对象实例时,该实例会继承`prototype`对象的属性和方法。因此,`prototype`是实现JavaScript继承的主要机制。 其次,`__...
在这个例子中,`MyObject2`的实例`objectRef`将拥有一个原型链,链的第一个对象是`MyObject1`的实例,接着是`MyObject1`的原型`Object.prototype`,最后是`null`。 ##### 访问属性 当访问`objectRef.testString`时...
在JavaScript中,`prototype`是一个核心概念,它主要用于对象继承和原型链的构建。当我们谈论`prototype`时,我们实际上是在讨论JavaScript中的面向对象编程特性。在这个“prototype自己做的第二个例子”中,我们将...
- 第一个参数:请求的URL。 - 第二个参数:一个可选的哈希对象,包含请求配置选项。 #### 四、请求方法与参数 - **请求方法**:`method`选项用来指定HTTP请求方法,默认为`POST`。推荐使用`GET`方法获取数据,...
JavaScript中的函数是第一类对象,因此函数可以有属性和方法。当函数被用作构造函数时,它的`prototype`属性会被用于创建新实例的原型。通过修改`prototype`,我们可以为所有实例添加共享属性和方法。 4. **Ajax与...
- **第一部分:Prototype** - **第1章:扩展和增强DOM元素** 讨论如何利用Prototype框架来操作和增强DOM元素,包括选择器、创建和操作元素等。 - **第2章:处理跨浏览器事件** 介绍如何在不同浏览器之间实现...
此外,JavaScript的每一个函数(类)都有一个prototype属性,这个属性指向了一个原型对象。所有通过该函数创建的对象都继承了原型对象的属性和方法。这就是所谓的原型继承,它允许开发者在所有实例之间共享方法和...
它接受两个参数,第一个参数是要查找的模式(可以是字符串或正则表达式),第二个参数是要替换为的新值。 - **关于`.prototype`**:在JavaScript中,`prototype`属性用于定义和实现对象的共享属性和方法。在上述示例...
// 查找第一个class为'someClass'的div ``` ### 3. `prototype.js` 开发手册 `prototype.js`的开发手册(如压缩包内的`prototype.js开发手册.pdf`)是学习和掌握该库的重要资源。手册详细介绍了库的每个方法、类...
6. **Function对象**:Prototype扩展了JavaScript的Function对象,提供了如`bind()`、` curry()`和`wrap()`等方法,增强了函数作为第一级公民的能力。 7. **Script.aculo.us**:Prototype 1.6版本通常与Script....
4. **异常处理**:`Try.these()`方法允许依次尝试执行多个函数,直到找到第一个不抛出异常的函数并返回其结果。 5. **Ajax支持**:ProtoType包含`Ajax`对象和其他相关类如`Ajax.Request`,`Ajax.Response`,`Ajax....
例如,`Object.extend()`方法用于合并两个或更多对象的属性到第一个对象中,实现了类似CSS中的继承概念。`Object.clone()`则用于创建一个对象的浅复制,保留原始对象的所有属性,但不包括引用类型的值。 ### 2. DOM...
每个函数都有一个`prototype`属性,该属性是一个指针,指向一个对象,这个对象的用途是包含所有实例共享的属性和方法。当使用构造函数创建对象时,新对象的原型会指向构造函数的`prototype`对象。因此,我们可以在...
它接受一系列函数作为参数,并顺序执行这些函数,直到找到第一个能够成功执行的函数,然后返回该函数的返回值。这在处理跨浏览器兼容性问题时特别有效,例如在上面的例子中,用于获取XML节点的文本内容。 Prototype...
8. **对象与原型链**:JavaScript采用原型继承,每个对象都有一个原型(__proto__),可以通过`prototype`属性定义对象的方法,实现类的模拟。 9. **异步编程**:Promise、async/await等机制解决了JavaScript中的回...