2019百度前端笔试编程题分享
前端小白想找前端实习,最近刚刚跪了一个百度的笔试题。分享给大家一下。
大概的题意:
在一个闪光的光标前,不断添加元素,实现一种彩色打印机的形式。
主要要实现两个小的功能点:
- 定时添加新的字;
- 每次填加的字符颜色都是随机的;
笔试的时候直接跪了,只会写定时器,不会写随机颜色,基础太差,( Ĭ ^ Ĭ )
这几天查了一下资料,实现了这个功能。
效果预览:
贴代码:
// 获取随机的颜色
function getRandomColor(){
chars='0123456789abcdef';
color='#';
for( var i=0;i<6;i++){
color+=chars[Math.floor(Math.random()*16)];
}
return color;
}
// 主逻辑
function colorPrint(str){
var r=str.split(""),
s='';
setTimeout(function fn(){
var parentNode = document.getElementById("container");
//创建一个新的行内元素
var newSpan = document.createElement('span');
s=r.shift()
var newSpan_text=document.createTextNode(s);
newSpan.appendChild(newSpan_text);
newSpan.style.color = getRandomColor();
parentNode.appendChild(newSpan);
if(r.length>0){
setTimeout(fn,200)
}
},200);
}
colorPrint('你好,这是一个测试用的句子!')
欢迎指正!