indexof(参数1,参数2)该方法可以检索一个字符串中是否含有指定内容,参数1——如果字符串中含有该内容,则会返回第一次出现的 索引号, 如果没有,则返回 -1 参数2——可以指定开始查找的位置。
- // 方法二: 使用 indexOf
- var other = [1, 3, 5, 2, 1, 4, 3, 1, 2, 5, 3, 1, 2, 1];
- var otherArray = [];
- for (var i = 0; i < other.length; i++) {
- // 利用数组的indexOf方法,当数组内无此元素时返回-1,否则返回该元素在数组中的索引值
- if (otherArray.indexOf(other[i]) === -1) {
- otherArray.push(other[i]);
- }
- }
- console.log(otherArray);
includes() 方法用于判断字符串是否包含指定的子字符串。
如果找到匹配的字符串则返回 true,否则返回 false。
注意: includes() 方法区分大小写。
- // 方法三: 使用includes
- var one = [1, 3, 5, 2, 1, 4, 3, 1, 2, 5, 3, 1, 2, 1];
- var two = [];
- for (var i = 0; i < one.length; i++) {
- // 利用数组的includes方法,测试该数组中是否有该值,若有则返回true,否则返回false
- if (!two.includes(one[i])) {
- two.push(one[i]);
- }
- }
- console.log(two);
冒泡排序的基本思想是:对比相邻的元素值,如果满足条件就交换元素值,把较小的元素值移动到数组前面,把大的元素值移动到数组后面(也就是交换两个元素的位置),这样数组元素就像气泡一样从底部上升到顶部。
注意:不过本题中并未使用到第三方变量进行变量交换,只需要将重复的元素从数组中删除即可。
- // 创建数组并完成初始化
- var arr = [1, 3, 5, 2, 1, 4, 3, 1, 2, 5, 3, 1, 2, 1];
- // 遍历数组并加以条件判断
- for (var i = 0; i < arr.length; i++) {
- for (var j = i + 1; j < arr.length; j++) {
- // 当出现重复数据时,将该元素从数组中删除
- if (arr[i] == arr[j]) {
- arr.splice(j, 1);
- j--;
- }
- }
- }
- console.log(arr);