本文作者: jsweibo
本文链接: https://jsweibo.github.io/2019/08/19/%E4%BB%80%E4%B9%88%E6%98%AFPrototype/
摘要
本文主要讲述了:
- 什么是 Prototype
- 查看版本
$()
$F()
$$()
$A()
$H()
$R()
$w()
- 处理事件
- Ajax
正文
Prototype 是一个 JavaScript 库。
Prototype 的初始版由 Sam Stephenson 于 2005 年 2 月发布。
Prototype 在String.prototype
、Array.prototype
、Number.prototype
等原型对象上扩充了新的方法同时封装了多个函数用于简化 Web 前端开发。
实际上,为原型对象新增方法是存在隐患的。一旦未来的 JavaScript 原生实现了同名方法且和库方法存在差异,必然导致库开发者和库用户不得不重新修改自己的代码。最好的方法是创建一个自己的对象,就像 jQuery 做的那样。
查看版本
1 | console.log(Prototype.Version); |
$()
$()
用于获取 id 对应的元素,类似document.getElementById()
。
示例:
1 | document.getElementById('foo').style.color = '#ffffff'; |
相当于
1 | $('foo').setStyle({ |
$F()
$F()
用于获取表单元素的值。
示例:
1 | <input id="foo" type="text" /> |
$$()
$$()
用于获取元素集合,其返回值类型为数组。
示例:
1 | <div class="foo"></div> |
$A()
$A()
用于将类数组对象转换为数组,类似Array.from()
。
示例:
1 | var foo = { |
$H()
$H()
用于创建Hash
对象。
Hash
对象类似 JavaScript 对象,只是 Prototype 在Hash
对象上扩充了新的方法。
示例:
1 | var foo = $H({ |
$R()
$R()
用于创建范围对象。
示例:
1 | var foo = $R(0, 10); |
$w()
$w()
用于创建数组。
示例:
1 | var foo = $w('apples bananas kiwis'); |
处理事件
示例:监听window
的load
事件
1 | Event.on(window, 'load', function (event) { |
示例:监听 id 为foo
的元素的click
事件
1 | Event.on('foo', 'click', function (event) { |
Ajax
示例:GET
方法
1 | new Ajax.Request('/demo.json', { |
示例:POST
方法
1 | new Ajax.Request('/demo.json', { |
示例 3:POST
方法
1 | new Ajax.Request('/demo.json', { |
参考资料
本文作者: jsweibo
本文链接: https://jsweibo.github.io/2019/08/19/%E4%BB%80%E4%B9%88%E6%98%AFPrototype/
本文对你有帮助?请支持我
- 本文链接: https://jsweibo.github.io/2019/08/19/%E4%BB%80%E4%B9%88%E6%98%AFPrototype/
- 版权声明: 除非另有说明,否则本网站上的内容根据署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。