文章目录
- 前言
- 一、数组去重
- 二、排序
- 三.setInterval/setTimeout详解
- 四.批量添加事件(事件委托)
- 五.闭包(本质,原理,构成,作用,缺点)
- 六.作用域链
- 七.匿名函数(本质,和普通函数的区别,调用方式)
- 八.7.Ajax跨域的方式,及各自的特点
- 九.你知道的数组中那些方法不会修改原数组,哪些方法可以修改原数组
- 十.javascript代码中的"use strict";是什么意思?使用它区别是什么?
- 十二.每个 HTML 文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗?
- 十三.mvvm和mvc有什么区别
- 十四.src和href的区别
- 十五.知道的图片的格式有哪些(webp)
- 十六.在 css/js 代码上线之后开发人员经常会优化性能,从用户刷新网页开始, 一次 js 请求一般情况下有哪些地方会有缓存处理?
- 十七.页面中图片很多时导致页面加载过慢,你有什么好的方法
- 十八.有哪项方式可以对一个 DOM 设置它的 CSS 样式?
- 十九.CSS 中可以通过哪些属性定义,使得一个 DOM 元素不显示在浏览器可视范围内?
- 二十.同步和异步的区别?
- 总结
前言
复习一下之前学的js基础
一、数组去重
1. arr.splice 去重
代码如下:
var arr=[1,3,5,6,3,5,6,3,7,9,23,23]
function a(arr){
for(var i=0;i<arr.length-1;i++){
for(var j=i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
arr.splice(j,1);
j--;
}
}
}
return arr;
}
var arr1 = a(arr)
console.log(arr1)
2. 借助新数组,判断新数组中是否存在该元素如果不存在则将此元素添加到新数组中(原数组长度不变但被按字符串顺序排序)
代码如下:
var arr = [1,3,5,6,3,5,6,3,7,9,23,23]
function sun(arr){
var b=[];
var c;
arr.sort();
c=arr[0];
b.push(arr[0]);
for(var i=1;i<arr.length;i++){
if(arr[i] !=c){
b.push(arr[i])
c=arr[i]
}
}
return b
}
var arr1 = sun(arr)
console.log(arr1)//[1, 23, 3, 5, 6, 7, 9]
3. 创建一个新数组,判断新数组中是否存在该元素如果不存在则将此元素添加到新数组中
代码如下:
var arr = [1,23,1,1,1,3,23,5,6,7,9,