<script src="prototype.js"></script>
<script>
/**//*var arr = [1,2,3,4,8,5,4,3];
// 依次输出1,2,3,4,5,4,3
arr.each(
function (item, index) {
if (item < 6) {
alert(item);
} else {
throw $continue;
}
}
);
// 依次输出1,2,3,4
arr.each(
function (item, index) {
if (item < 6) {
alert(item);
} else {
throw $break;
}
}
);*/
/**//*
var arr = [1,2,3,4,5];
// arr = [1,2,3,4,5]
arr.reverse(false);
alert(arr.inspect());
// arr = [5,4,3,2,1]
arr.reverse();
alert(arr.inspect());
var arr = [1,2,3,4,5];
arr.reverse();
// 返回2在arr中的序号:1
var index = arr.indexOf(2);
alert(index)
var arr = [1,2,3,4,5];
// 不包含2和4,返回[1,3,5]
var newArr = arr.without(2,4);
alert(newArr.inspect());
var arr = [1,2,3,4,5];
arr.clear();
alert(arr[2]);
var arr = [1,2,3,4,5];
var arr2 = [2,4,6,8,10];
//[ [1,2],[2,4],[3,6],[4,8],[5,10]]
var newArr = arr.zip(arr2);
// [[1,4],[4,16],[9,36],[16,64],[25,100]]
var newArr2 = arr.zip(
arr2,
function (item) {
var newItem = item.collect(
function (item, index) {
return item * item;
}
);
return newItem;
}
);
alert(newArr.inspect());
alert(newArr2.inspect());
var arr = [5,2,3,1,4];
// 将arr排序
var arr = arr.sortBy(
function (item, index) {
return item;
}
);
arr.each(
function (item, index) {
alert(item);
}
);
var arr = [
{root: 1, square: 1},
{root: 2, square: 4},
{root: 3, square: 9},
{root: 4, square: 16},
{root: 5, square: 25}
];
var newArr = arr.pluck("square");
alert(newArr[4]);
var arr = [1,2,3,4,5];
var ptArr = arr.partition(
function (item, index) {
return item%2 == 1;
}
);
var oddArr = ptArr[0];
var evenArr = ptArr[1];
oddArr.each(
function (item) {
alert(item);
}
);
evenArr.each(
function (item) {
alert(item);
}
);
var arr = [1,2,3,4,5];
// 最大值
var max = -arr.min(
function (item, index) {
return -item;
}
);
// 最小值
var min = arr.min();
alert(max);
alert(min);
var arr = [1,2,3,4,5];
// 最大值
var max = arr.max();
// 最小值
var min = -arr.max(
function (item, index) {
return -item;
}
);
alert(max);
alert(min);
// 求集合中每一个元素的平方
Number.prototype.square = function () {
return this * this;
}
var arr = [1,2,3,4,5];
var newArr = arr.invoke("square");
alert(newArr[4]);
// 计算arr中所有数的乘积
var factorial = arr.inject(
1,
function (accumulator, item, index) {
return accumulator * item;
}
);
alert(factorial)
// 判断集合中是否包含”2“
var inc = arr.include(2);
alert(inc);
var arr = ["12345", "abc2", "cde", "fgh", "132ba"];
var newArray = arr.grep(
/2/,
function (item, index) {
return item + " contains 2";
}
)
newArray.each(
function (item) {
alert(item);
}
);
var arr = [1,2,3,4,5];
// 返回集合中所有的奇数
var oddArr = arr.findAll(
function (item, index) {
return item%2 == 1;
}
);
alert(oddArr[2]);
// 返回第一个大于3的元素
var ele = arr.find(
function (item, index) {
return (item > 3);
}
);
alert(ele);
var newArr = arr.collect(
function (item, index) {
return item * (index + 1);
}
);
var hasNegative = arr.any(
function (item, index) {
return (item < 0);
}
);
// 测试集合中的所有元素是否大于0
var allPositive = arr.all(
function(item, index) {
return (item > 0);
}
)
alert(allPositive);
arr.each(
function (item, index) {
alert("arr[" + index + "] = " + item);
}
);*/
</script>
分享到:
相关推荐
三、Prototype.js实战应用 1. **模块化开发**:Prototype.js的模块化设计思路可以帮助开发者组织代码,提高代码复用性。使用`Object.extend()`或`Prototype.include()`方法,可以将功能划分到不同的模块中。 2. **...
另一种实现字符串替换的方法是使用String.prototype.split()方法将字符串分割成数组,然后使用Array.prototype.join()方法将数组连接成新的字符串。例如: `const s = 'hello. hello. hello.';` `s.split('hello. '...
**Ajax实战:Prototype与Scriptaculous篇** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使得网页实现异步更新,...
学习Prototype.js,可以参考官方文档,查阅各种教程和示例代码,同时,Stack Overflow 和其他开发者论坛是获取帮助和分享经验的好地方。社区的存在使得解决遇到的问题变得更加容易。 总结,"最新Prototype手册"是...
2. **对象和函数**:学习Prototype提供的各种对象和函数,如Array、String、Function、Object等的扩展,以及Ajax请求的实现。 3. **DOM操作**:熟悉Prototype如何简化HTML元素的选择、操作和事件处理,如`$()`, `$$...
JavaScript提供了一系列内置对象,如`Array`、`Date`、`Math`等,它们具有预定义的方法和属性,方便开发者处理数据和进行各种计算。 4.5 实战:产生n个不重复随机数 实际编程中,可能会遇到生成指定数量不重复...
三、Prototype实战技巧 1. **模块化开发**:Prototype支持模块化开发,通过`Object.extend()`和`Class.include()`等方法,可以实现代码的模块化组织,提高代码复用性和可维护性。 2. **性能优化**:理解Prototype...
1. **对象扩展与原型链**:Prototype利用JavaScript的原型机制,使得可以方便地为原生对象添加方法和属性,如Array、String等。这使得开发者能更高效地处理数据和对象。 2. **$()函数**:这是Prototype中最知名的...
这个库引入了许多实用的类和方法,如Array、String、Function、Object等的扩展,使得JavaScript的代码更加简洁易读。 二、核心特性 1. **对象扩展**:PrototypeJS通过原型链机制增强了JavaScript的对象模型,允许...
- 使用`Array.prototype.indexOf()`或`Array.prototype.includes()`来检查抽中的奖项是否已经出现过,防止重复。 4. **DOM操作** - `document.querySelector()`和`document.querySelectorAll()`用于选取DOM元素,...
同时,修改数组的元素需要使用`Array.prototype.splice`方法,而不是直接赋值,以确保Vue能够检测到变化。 #### SPA页面滚动问题 单页面应用(SPA)在页面切换时,通常会遇到页面滚动到顶部的问题。为了解决这个...
这个“mootools中文帮助文档”提供了全面的指南和教程,帮助开发者理解和应用MooTools的各种功能。 1. **MooTools的基本概念** - **模块化编程**:MooTools的核心设计理念是模块化,允许开发者按需引入所需的功能...
例如,`Array.prototype.map()`、`filter()`和`reduce()`等,这些都是常见的高阶函数,它们能对数组进行高效操作。 5. **异步编程**:JS是非阻塞的,使用回调函数、Promise和async/await处理异步操作。理解事件循环...
* 如何使用 ES6 的 Array.prototype.includes() 方法? * ES6 中的 Object.assign() 方法是什么? 七、ES6 数组面试题 ES6 中的数组有很多新的特性,在面试中,可能会被问到关于数组的相关问题,例如: * 如何...
例如,`Array.prototype.map`用于创建原数组的映射,`Date.now()`则返回当前时间戳。 事件处理是JavaScript与用户交互的关键,例如点击按钮、鼠标移动等。事件监听器可以使用`addEventListener`方法添加,而`...
【学习ExtJS】深入理解与实战应用 在深入学习ExtJS之前,首先需要了解它的基本概念和开发环境的搭建。ExtJS是一个强大的JavaScript框架,它提供了丰富的用户界面组件,用于构建复杂的Web应用程序。通过前一章的概念...
你可能需要练习使用`Array.prototype.map()`, `filter()`, `reduce()`等方法进行数组操作,理解闭包和高阶函数的概念,并尝试实现柯里化(Currying)和函数组合。 3. **异步处理**:在JavaScript中,异步编程是处理I/...
1. `Array.prototype.map()`: 对数组的每个元素应用一个函数,并返回新数组。这个操作不会改变原数组。 ```javascript const numbers = [1, 2, 3, 4]; const squared = numbers.map(num => num * num); console.log...
在"团队战绩"查询部分,开发者需要处理更复杂的数据结构,比如按队伍分组的战绩信息,这可能需要使用到JavaScript的数组操作函数,如`Array.prototype.map()`、`Array.prototype.filter()`等。此外,团队成员的详细...