1.数组去重 (去掉数组中重复的数字)
var arr = [1, 2, 3, 4, 5, 5, 4, 6, 78, 1, 789, 8975, 78];
var arr1=[];
for(var i in arr){
if(arr1.indexOf(arr[i])==-1){
arr1.push(arr[i])
}
}
document.write(arr1)
2.判断一个单词是否为回文?
所谓回文就是产生首尾回环的效果,叫做回文,也叫回环。比如 mnmnm abcba .
这其实就是考察我们对reverse的应用啦!我们可以利用函数,将字符串转换成数组在用join把他转为字符串进行比较就可判断出是不是回文了。
案例: functionfun(str) {
if(str==str.split('').reverse().join('')){
alert("是回文")
}else{
alert("不是回文")
}
}
fun("mnmnm")
3.cellpadding与cellspacing有何区别?
cellpadding:代表单元格边框到内容之间的距离(留白)
cellspacing:cellspacing属性用来指定表格各单元格之间的空隙。此属性的参数值是数字,表示单元格间隙所占的像素点数。
4.display与visibility有何异同?
display可以有很多值,visibility只有两个常用值:visible、hidden。
当display为none、visibility为hidden时都会隐藏元素。但display会隐藏掉元素空间,visibility会保留元素空间。
5.操作数组
push在数组末尾添加一个或多个新元素
unshift在数组开头添加一个或多个新元素
pop移除最后一个元素
shift移除第一个元素
Sort:排序
reverse倒序
join讲数组转为字符串
slice()方法返回指定数组的一个片段或子数组,它的两个参数分别指定片段的开始和结束的位置。
splice插入、删除、替换元素
6.for循环
for语句的语法格式:
for(initialize;test;increment){
}
三个表达式之间用分号隔开,
他们分别负责初始化操作、循环条件判断和计数器变量的更新
7.Dom原生
DOM文档对象模型
firstChild:childNodes (孩子节点数组)列表中第一个节点。
lastChild:childNodes (孩子节点数组)列表中的最后一个节点。
parentNode:返回父节点
previousSibling:返回当前节点之前的节点。
nextSibling:返回当前节点的下一个节点。
attributes:返回节点属性的对象集合
childNodes:返回子节点对象集合,是数组对象,包含文本节点和元素节点
children:返回子节点对象集合,是数组对象,只包含元素节点
节点树中的节点彼此拥有层级关系
在节点树中,顶端节点被称为根(root)
每个节点都有父节点、除了根(它没有父节点)
一个节点可拥有任意数量的子节点
同胞是拥有相同父节点的节点
1.查找元素
getElementById()方法可返回对拥有指定ID的第一个对象的引用
getElementsByName()方法可返回带有指定名称的对象的集合
getElementsByTagName()方法可返回带有指定标签名的对象的集合
getElementsByClassName()返回文档中所有指定类名的元素集合
2创建标签方法
document.createElement()//创建一个元素节点
document.createTextNode()//创建一个文本节点
parentNode.appendChild(newChild)//newChild被添加到孩子列表中的末端。
innerHTML属性设置或返回标签的开始和结束标签之间的HTML
getAttribute()方法返回指定属性名的属性值
setAttribute()方法添加指定的属性,并为其赋指定的值。
如果这个指定的属性已存在,则仅设置/更改值
BOM浏览器对象模型
8.事件监听
addEventListener("click",alertId,false)
添加事件监听,有三个参数,第一个参数是事件的名称,第二个参数是要执行的函数名,第三个参数是规定事件执行的顺序,第三个默认是false,代表事件冒泡,true代表事件捕获,可选
9.用纯CSS创建一个三角形的原理是什么?
把上、左、右三条边隐藏掉(颜色设为transparent)
#demo {
width: 0;
height: 0;
border-width: 20px;
border-style: solid;
border-color: transparent transparent red transparent;
}
�10.CSS有哪些继承属性
(1) id选择器(# myid)
(2) 类选择器(.myclassname)
(3) 标签选择器(div, h1, p)
(4) 相邻选择器(h1 + p)
(5) 子选择器(ul > li)
(6) 后代选择器(li a)
(7) 通配符选择器(*)
(8) 属性选择器(a[rel ="external"])
(9) 伪类选择器(a:hover,li:nth-child)
可继承:font-size font-family color, UL LI DL DD DT;
不可继承:border padding margin width height ;
11.CSS3有哪些新的特性
新增各种CSS选择器
圆角(border-radius:8px)
多列布局(multi-column layout)
阴影和反射(Shadow\Reflect)
文字特效(text-shadow、)
文字渲染(Text-decoration)
线性渐变(gradient)
旋转(transform)
缩放,定位,倾斜,动画,多背景
12.JavaScript原型,原型链?有什么特点?
每个对象都会在其内部初始化一个属性,就是prototype(原型),当我们访问一个对象的属性时,
如果这个对象内部不存在这个属性,那么他就会去prototype里找这个属性,这个prototype又会有自己的prototype,
于是就这样一直找下去,也就是我们平时所说的原型链的概念。