面试题
-
div 标签和 span 有何不同?
·div 标签属于块级元素标签,独占一行,可以包含段落标题和表格等其他段落内容;
·span 标签属于行内元素标签,不会独占一行,没有结构的意义。 -
用 JS 截取字符串:cdefgh 中取 fgh?
var stmp = "rcinn.cn";
//使用 substring() 或者 slice():
//一个参数---起始位置(从0开始计数)
alert(stmp.slice(3)); //从第4个字符开始,截取到最后几个字符;返回"nn.cn"
alert(stmp.substring(3)); //从第4个字符开始,截取到最后几个字符;返回"nn.cn"
//两个参数,第一个为起始位置,第二个为截止位置(不包括在内)。
alert(stmp.slice(1,5)); //从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substring(1,5)); //从第2个字符开始,到第5个字符;返回"cinn"
//如果只用一个参数并且为0的话,那么返回整个参数
alert(stmp.slice(0)); //返回整个字符串
alert(stmp.substring(0)); //返回整个字符串
//使用 substr() 方法
alert(stmp.substr(1,5)); //从第1位开始,截取5个字符;返回"cinn."
//对比: substr(n1,n2) 中第二个参数代表的是截取的长度,
//而 slice(n1,n2)和 substring(n1,n2) 中第二个参数代表截止位置。
-
简述 Ajax 原理,什么是同步异步(主观题答案不唯一)?
答:Ajax 是指一种创建交互式网页应用的网页开发技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
同步传输-Sync是面向比特的传输,它的单位是桢,它传输的时候要求接受方和发送方的时钟是保持一致的;具体来说,同步传输的比特分组要大得多,虽然其通常要比异步传输快速得多,开销也比较少;但是,同步传输数据比特位越长,缓存数据所需要的缓冲区也越大;简单来说,同步就是必须一件一件事做,等前一件做完了才能做下一件事。
异步传输-Async是面向字符的传输,它的单位是字符;具体来说,异步传输是将比特分成小组来进行传送。异步与同步相对,当一个异步过程调用发出后,调用者在没有得到结果之前,就可以继续执行后续操作。 -
json 和 xml 哪一个更易于开发和维护?JS中怎么序列化 json 字符串?
答:(1) json 更易于维护和开发 —> 传送门-json vs xml;
(2) js 序列化 json 字符串:
JSON 有两个方法:stringify()-(json对象转为 json 字符串) 和 parse()-(序列化 json 字符串)。
介绍:在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript。
详细见 —> 传送门
示例:
JSON.stringify(jsonobj); //将json对象转换成json字符串
JSON.parse(jsonstr); //将json字符串转换成json对象
//另外还有eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码:
eval('('+jsonstr+')'); //将json字符串转换成json对象,注意需要在json字符串外包裹一对小括号
//提示:虽然 eval() 的功能非常强大,但在实际使用中用到它的情况并不多。
-
JS 中怎么创建一个类?
答:
方式1 : var obj = new Object();
方式2 : var obj = {}; -
JS的typeof返回哪些数据类型?
string、number、object、boolean、function、undefined -
闭包是什么?有什么特性? 请简单书写一个简单的例子
答:一个函数用到了它作用域外面的变量,那么这个变量和这个函数之间的环境就叫闭包。
1、函数里面包含的子函数,子函数访问父函数的局部变量;
2、通过 return 将子函数暴露在全局作用域,子函数就形成闭包;
3、通过闭包,父函数的局部变量没有被销毁,可通过闭包去调用 ,但同时,这个局部变量也不会被全局变量污染。
优点: 避免全局变量的污染,同时,局部变量没有被销毁,驻留在内存中,还可以被访问
缺点: 使用不当,会造成内存泄露
参考:简书-hv_fc0e
简单案例:
function aaa() {
var a = 0; //父函数中的局部变量
return function () {
alert(a++); //子函数访问父函数中的局部变量,通过return暴露于全局
};
}
var fun = aaa();
fun(); //1
//简单点就是return一个函数
- 行内元素有哪些?块级元素有哪些?CSS盒模型?
行内元素于块级元素:—> 传送门-见第2题;可参见:简书
CSS盒模型:—> CSS盒模型-菜鸟教程
问答
- 对薪资有何要求?
- 如何看待加班?
- 最快啥时候能上岗?
- 当前的技术学习以及职业规划是怎样的?
2019.11.25