面试题--1
简答题
1. unshift(),shift(),push(),pop(),concat()
答:unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
push()方法是向数组末尾添加一个或者多个元素,并返回新的长度。
pop()方法删除数组的最后一个元素,把数组的长度减1,并且返回它被删除元素的值。如果数组已经为空,则 pop() 不 改变数组,并返回 undefined 值。
concat()方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
slice(start,end) 从某个已有的数组返回选定的元素,从start位开始返回到end(包括start不包括end)如果是负数,表示从数组尾部进行计算(同样:包括start不包括end),请注意,该方法并不会修改数组,而是返回一个子数组。
splice():删除功能,第一个参数为第一项位置,第二个参数为要删除几个;
插入功能,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项);
替换功能,第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)
注意:splice()与slice()进行区分
补充:改变原数组:pop(), push(), reverse(), shift(), sort(), unshift(),splice()
不改变原数组:concat(), join(), slice()
2. 请编写一段JavaScript脚本生成下面这段DOM结构。要求:使用标准的DOM方法或属性。
<div id=”example”>
<p class=”slogan”>pdd</p>
</div>
答:
var div = document.createElement('div');
div.id = 'example';
var p = document.createElement('p');
p.className = 'slogan';
p.innerHTML = 'pdd';
div.appendChild(p);
document.body.appendChild(div);
3. 用css实现带边框的右三角,兼容IE7
答:IE6不兼容transparent, 左右border由 solid改为dashed.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Dom</title>
<style type="text/css">
.triangle {
display: inline-block;
width: 0;
height: 0;
border-top: 20px dashed transparent;
border-right: 20px dashed #463;
border-left: 20px dashed transparent;
border-bottom:20px dashed transparent;
}
</style>
</head>
<body>
<div class="triangle"></div>
</body>
</html>
上一篇: Vue项目的基本项目结构
下一篇: 面试题(1)