这里汇聚的是我在参加面试时所遇到过的问题。
如果各位也想测测自己是否能答出来的话,那么请只看「问题」部分,其他部分不要看。
#lc {
width: 300px; float: left;
border-width: 1px; border-style: solid; border-color: #ccc;
background: #09e;
margin-top: 20px;
margin-right: 10px;
}
#rc {
border-color: #cccccc;
width: 500px; border-style: solid;
float: left; border-width: 1px;
margin-top: 20px; background: #09e;
}
上面的样式有何改进的地方?
#lc,
#rc {
border: 1px solid #ccc;
background-color: #09e;
margin-top: 20px;
}
#lc {
width: 300px;
float: left;
margin-right: 10px;
}
#rc {
width: 500px;
overflow: hidden;
}
#lc,
#rc {
float: left;
border: 1px solid #ccc;
background-color: #09e;
margin-top: 20px;
}
#lc {
width: 300px;
margin-right: 10px;
}
#rc {
width: 500px;
}
- 可合并的规则的合并时机的掌握
- 左右布局的实现方式
都有哪些实现左右布局的方式?这些方式的优缺点是什么?
现有数组["a", "c", 5, 1, "b", 2, 3, "d", "e", 4]
,如何使其顺序为["e", "d", "c", "b", "a", 1, 2, 3, 4, 5]
?
["a", "c", 5, 1, "b", 2, 3, "d", "e", 4].sort(function( a, b ) {
var a_is_num = typeof a === "number";
var b_is_num = typeof b === "number";
var r;
if ( a_is_num ) {
if ( b_is_num ) {
r = a - b;
}
else {
r = 1;
}
}
else {
if ( b_is_num ) {
r = -1;
}
else {
r = b.charCodeAt(0) - a.charCodeAt(0);
}
}
return r;
});
- 对
Array.prototype.sort
的熟悉情况 - 如何比较字符大小
- 元素不是字符而是字符串时(例如:
["ab", "az", "by", "azc", 5, 10, 6]
)如何实现? - 不用
Array.prototype.sort
如何实现?
for (var i = 0; i < 10; i++){
setTimeout(function(){
console.log(i);
});
}
上面代码的输出结果是什么?
10 个10
。
- 对
for
的理解 - 对作用域的理解
for (var i = 0; i < 10; i++) {
(function(i) {
setTimeout(function() {
console.log(i);
});
})(i);
}
// => 0-9