100道前端面试题02
来源:互联网 发布:centos mini desktop 编辑:程序博客网 时间:2024/06/05 10:56
这次主要是翻译整理了一些国外网站的测试题。
01.下列表达式输出结果为?
var val= 'smtg';
console.log('Value is '+ (val ==='smtg') ? 'Something': 'Nothing');
选项1:Value is Something
选项2:Value is Nothing
选项3:other
答:结果为3,因为+运算符比三元运算符有更高的优先级,结果三元运算覆盖了前面+运算后打印出来。其实打印结果为Something。
02.下列表达式输出结果为?
function showCase(value) {
switch(value) {
case 'A':
console.log('Case A');
break;
case 'B':
console.log('Case B');
break;
case undefined:
console.log('undefined');
break;
default:
console.log('Do not know!');
}
}
showCase(new String('A'));
答:最后值为‘Do not know’,因为new String创建了一个对象。不能和循环里面的字符串匹配。
03.下列表达式输出结果为?
function showCase2(value) {
switch(value) {
case 'A':
console.log('Case A');
break;
case 'B':
console.log('Case B');
break;
case undefined:
console.log('undefined');
break;
default:
console.log('Do not know!');
}
}
showCase2(String('A'));
答:这道结果就能和循环里面的第一个匹配,因为String(X)并不能创建一个对象,String(‘x’)===’x’。
04.下列表达式输出结果为?
(function(){
var x= y = 1;
})();
console.log(y);
console.log(x);
答:会输出一个1和错误。在js里面如果没有写var是一种隐式声明的全局变量,即使写在函数里面,也能被其他部分所访问。这里面y是全局变量而x不是。
05.下列表达式输出结果为?
var a= /123/,
b = /123/;
a == b
a === b
答:输出两个false,正则表达式无法比较。
06.下列表达式输出结果为?
'5' + 3
'5' - 3
答:会输出53和2。因为+在js起到一个连接符的作用,但是-号不是,js内部会将字符串转换成整数,然后运算。
07.下列表达式输出结果为?
c=5;
function test3()
{
window.c=3;
alert(c);
var c;
alert(window.c)
}
test3();
答:undefined和3。函数内部的变量优先。而函数内部c无值。
08.对象是怎么样创建的?
1.用var obj={}就可以创建一个对象2.用new Object()也可以创建一个对象.
09.DOM中有几种类型的节点
整个文档是一个文档节点(Document)
每个 HTML标签是一个元素节点(Element)
每一个 HTML属性是一个属性节点(Attribute)
包含在 HTML元素中的文本是文本节点(Text)
10.怎么样给一个对象动态添加属性或者方法
直接在对象上面用obj.属性="test",或obj.方法名=function(){}定义一个方法。
更多请关注公众号:FE学习笔记。
- 100道前端面试题02
- 100道前端面试题系列01
- 几道前端面试题
- 两道Javascript-前端面试题
- 阿里前端算法面试题两道
- 前端面试题
- 前端面试题
- 前端面试题整理
- 前端面试题
- web前端面试题
- 前端开发面试题
- 收录:前端面试题
- 前端面试题
- Web前端面试题
- 前端面试题
- 阿里巴巴 前端面试题
- 前端各种面试题
- web前端面试题
- Redis缓存命令整理—Hash(哈希表)操作命令
- 小鸦
- JavaEE学习笔记--JavaScript(2)
- [LeetCode]110. Balanced Binary Tree
- 使用VirtualBox和Vagrant搭建Linux开发环境
- 100道前端面试题02
- 2017年4月28日工作日记
- Extjs GridPanel用法详解
- Ubuntu提示 /boot 分区空间不足解决方法
- 高并发Java 六 JDK并发包2
- 基于Spark UI性能优化与调试——初级篇
- hibernate 的参数绑定
- Keyboard Row问题及解法
- mybatis 多字段、多表批量更新,判断条件也批量改变