Pau*_*aul 14 javascript jquery prototype
我想知道jQuery中的原型意味着什么?我通常会找到关于"Prototype"的信息 - 框架 - 但是这里是jQuery里面的"原型"......?你能告诉我什么时候最好用吗?
另外,你能告诉我:为什么我们在jQuery插件中使用"普通javascript"代码而不是jquery代码,就像在这个例子中一样?这是一个快速问题吗?
这是我的例子:(一个twitter的插件)
谢谢你的回答!
$.each(data, function(i, item) {
holder.append("<p>"+item.text.makeLinks()+"</p>");
});
//...further in the code
String.prototype.makeLinks = function() {
return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(str) {
return str.link(str);
});
};
Run Code Online (Sandbox Code Playgroud)
Mat*_*all 42
我想知道jQuery中"原型"是什么意思
名为Prototype的JavaScript库的名称来自JavaScript原型.在JavaScript中,原型是提供继承的机制(与类相反).示例:String.prototype引用s 的prototype对象String,其中包含可以在any上调用的方法(以及其他内容)String.
在您的问题的示例中,twitter插件创建一个String.prototype名为的新函数makeLinks,它允许函数调用,例如:
text.makeLinks()
Run Code Online (Sandbox Code Playgroud)
哪里text是一个字符串.
更多关于原型的阅读:
为什么我们在jQuery插件中使用"普通javascript"代码而不是jQuery代码?
jQuery不是JavaScript的替代品.它是一个JavaScript库,旨在使编写JavaScript更容易,否则必须使用DOM API.你在jQuery插件中看到"vanilla"JavaScript,因为实际上没有更好的方法来做JS所做的事情.
jQuery是JavaScript.它通过提供更简单的API来简化编写其他JavaScript的过程,这些API在浏览器中保持一致.这不是DOM的情况,因为各种浏览器供应商已经创建了大多数相同但不相同的DOM API .
Quirksmode是一个流行的网站,用于记录这些不一致性(在CSS和JavaScript中).
欢迎来到网站开发!
Ort*_*iga 11
Prototype是一个纯粹的JavaScript功能.
它用于向已定义的对象添加属性或方法(有点像扩展).例如:
function myCustomObject(){
}
myCustomObject.prototype.myCustomAttr = "Hello";
var instance = new myCustomObject();
alert(instance.myCustomAttr); // alerts Hello
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19678 次 |
| 最近记录: |