web前端笔试篇(一)
【 题外话 】:本博主作为一名准毕业生,即将面临毕业就业问题,即将到大四了,不准备考研的我,那么该去干嘛呢?毫无疑问,那就是实习,那么即使是实习,那么在要想进入自己心仪的企业之前,笔试这一关终究是无法避免的!特此,刷刷题也是有必要的哈!
【 第一题 】
var str = 'abc123';
var num = parseInt(str);
if (num == NaN) {
alert(NaN);
}else if (num == 123) {
alert(123);
}else if (typeof num == 'number') {
alert('number');
}else {
alert('str');
}
答案:弹出 number
解析:
parseInt():作用:解析一个字符串,参数:string [, radix],返回:解析后的数字,原有数组是否改变:否;该解析字符串为:'abc123',解析时从第一个字符开始解析,遇到非 Number 终止执行,故 num 的结果为:NaN,NaN 属于 number 类型,但不是一个有效的数字,并且NaN 和谁都不相等,包括自己,故弹出 number
【 第二题 】
var a = 'abc' + 123 + 456;
console.log(a); var a = '456' - '123';
console.log(a); var a = 1;
var b = '2';
var c = a > b ? (a < b ? a : b) : (a == b ? a : b);
console.log(c); var a = 5 & 3;
console.log(a);
答案:abc123456 333 2 1
解析:
(1)+ :连字符
(2)除了 + 运算符,有连字符的特殊意义,其它均为运算符,浏览器会进行数据类型转换,对参与计算的自动转换成 number 类型
(3)b = 2;三元运算符,1 > 2 为假,取 :后面的值,故c = (a == b ? a : b) ,1 == 2 为假,故 c = b = 2
(4) &:位运算符,同 1 得 1,有 0 得 0;5:101 3:011 相与 => 001 => 1
【 第三题 】
for (var i = 0; i <; i++) {
alert(i);
break;
}
alert(i);
for (var i = 0; i < 10; i++) {
continue;
alert(i);
}
alert(i);
答案:依次弹出三次,分别为:0 0 10
解析:
break:终止循环,故 i = 0 执行后便终止了,i++ 便没有执行,继续往下执行,此时 i 的值为:0,故再次弹出 0;
continue:跳出本次循环,所以不会执行 for 中的 alert(i),但会执行 i++ 直到 i = 10 结束循环,此时 i = 10,弹出 10.
【 第四题 】
function fun(a, b, c) {
var l = arguments.length;
var num = 0;
for (var i = 0; i < l; i++) {
num += arguments[i];
}
alert(num)
}
fun(1,2,3);
fun(1,2,3,4);
答案:6 10
解析:
arguments 是一个对象,不是一个 Array,但类似 Array,除了 length 属性和索引元素之外没有任何 Array 属性,可以使用 arguments 对象在函数中引用函数的参数,所以即就是相当于函数的参数可作为属性存储在 arguments 中,以数组索引的方式调取引用,此处即为实现三个/四个数求和.【 可实现任意数求和 】
【 第五题 】
var a = 0;
function fun() {
alert(a);
var a = 10;
}
fun();
alert(a);
答案:undefined 0
解析:
变量提升:a,形成一个私有作用域,存储一堆字符串:alert(a);var a = 10;
形参赋值,代码自上而下执行:全局变量 a = 0;fun();函数执行,其私有作用域中,同理变量提升,故 a 为 undefined;赋值:私有变量:a = 10;
弹出全局变量 a 的值:0
给自己点小自律:每天五道题,三个小demo,一需求,了解、巩固、熟悉、学习新知识;fighting
如有错误之处,欢迎大家评论指出哈!
web前端笔试篇(一)的更多相关文章
- web前端-基础篇
该篇仅是本人学习前端时,做的备忘笔记: 一.背景图片设置: 设置背景图时的css代码:background-image:url(图片的url路径); ps:设置好这个背景后请一定要设置该背景图片的大小 ...
- web前端基础篇⑨
1.web端.app端 目前实现响应式布局,主要用以下两种方式.CSS原生代码响应式布局 @media screen.bootstrap移动设备优先.自带框架. 兼容性 用原生代码的话 根据不同的屏幕 ...
- web前端基础篇①
html1.html5和css3在IE上都不支持2.超过1100px以上的宽度,就会出现滚动条3.<!doctype html>解析模式 分为 标准模式 混杂模式 非标准模式-针对IE6o ...
- web前端笔试选择题
1. 要动态改变层中内容可以使用的方法有(AB ) a)innerHTML b)innerText c)通过设置层的隐藏和显示来实现 d)通过设置层的样式属性的display属性 2. 当按键盘A时, ...
- web前端基础篇⑩
1.960栅格式布局法屏幕分辨率为1024*768.采用接 main宽为960px的布局方式12列式:每格60px 间距20px 3 6 3版 三格式布局(最常用)16列式:每格40px 间距20px ...
- web前端基础篇⑧
1.伪类选择器 都以冒号开始.:focus 焦点的地方加样式:first-child 向元素的第一个子元素添加样式锚伪类:a:link {color:red} 未访问的链接 a:visited {co ...
- web前端基础篇⑦
1.img src/url后一般接地址信息 标题为<h1>-<h6> 字体依次变小 预文本格式<pre></pre> 2.a标签实现跳转 例:<a ...
- web前端基础篇⑥
LESS.①是一种拓展技术,基于css.②包含变量.混合.函数.运算.③简化css代码.降低维护成本④目前用的解析器(koala) 变量(值可变)@变量名:值步骤:①建立文件夹②建html和less两 ...
- web前端基础篇⑤
1.雪碧图技术(精灵图)sprite cpmpass-合并2.兼容性:1.reset充值技术,normalize技术2.加前缀-webkit —mom -ms— -o-3.<!Doctype&g ...
随机推荐
- Mac App Store应用签名和pkg签名(必须签名后才能销售)
App签名 只有用苹果颁发的证书签名的应用才能在App Store上进行销售,所以我们开发的应用必须打上签名. 签名有两种方式,一是使用Xcode,在配置里面设置签名,编译出来的app就有了签名:二是 ...
- C#高性能大容量SOCKET并发(四):缓存设计
原文:C#高性能大容量SOCKET并发(四):缓存设计 在编写服务端大并发的应用程序,需要非常注意缓存设计,缓存的设计是一个折衷的结果,需要通过并发测试反复验证.有很多服务程序是在启动时申请足够的内存 ...
- MySQL数据库MHA+keepalive实现
MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀 ...
- UWP-HttpClient
原文:UWP-HttpClient 基本格式: HttpClient client = new HttpClient(); Uri uri = new Uri(url); HttpResponseMe ...
- 使用百度网盘+Git,把版本控制托管到云端,附精彩评论
http://www.cnblogs.com/vajoy/p/3929675.html 我试过多个这种双向同步的网盘,在网络状况不好.系统卡顿以及某些程序BUG的情况下,同步会有错乱现象,尤其是多个电 ...
- 为什么你有10年经验,但成不了专家?(重复性刻意训练+反馈修正,练习的精髓是要持续地做自己做不好的,太精彩了)真正的高手都有很强的自学能力,老师和教练的最重要作用是提供即时的反馈(莫非我从小到大学习不好的原因在这里?没有单独刻意训练?) good
也许简单看书就是没有刻意训练.更没有反馈,所以没有效果 我倒是想起自己,研究VCL源码的时候,都是自己给自己提问,然后苦思冥想.自己解决问题,然后Windows编程水平果然上了一个台阶.对什么叫做“框 ...
- 使用mingw编译完整Qt5的过程(使用了niXman的msys套装)good
使用mingw编译完整Qt5的过程 坛子里似乎已经有人编译出Qt5了,不过大多有问题,不是缺少opengl就是缺少openssl,还有缺少webkit的,本文提供的仍然不能说是绝对完整的,不过相对以前 ...
- notepadd++正则表达式大小写转换
示例1:将语句 test this sentence 转为大写 查找:^.*$ 替换:\U$0 或------------ 查找:^(.*)$ 替换:\U\1 或 \U$1 示例2:将语句 TEST ...
- 关于Git 的管理凭据操作
1.桌面-->2.我的电脑-->3.右击选择属性-->4.控制面板主页-->5.在用户账户和家庭安全下,选择添加或删除用户账户-->转到“主用户账户”页面-->6. ...
- Scala 学习之路(六)—— 常用集合类型之 List & Set
一.List字面量 List是Scala中非常重要的一个数据结构,其与Array(数组)非常类似,但是List是不可变的,和Java中的List一样,其底层实现是链表. scala> val l ...