web前端面试题及答案整理(一)

  1. js中关闭当前窗口的方法是:______?
    答案:window.close();

  2. js中使字符串中的字符变为小写的方法是:______?
    答案:toLowerCase();

  3. 在js中,让浏览器弹出确认框的语句是:______?
    答案:confirm。例如:window.confirm(“我就是确认框”);运行结果是浏览器弹出信息确认框,点击确定,返回true,反之返回false。

  4. 把 7.25 四舍五入为最接近的整数的方式是:______?
    答案:Math.round()。例如:round() 方法的定义是把一个数字舍入为最接近的整数。Math.round(7.25)结果为7,Math.round(7.75)结果为8。

  5. 在HTML5中,实现输入框占位符的属性是:______?
    答案:placeholder属性。它提供可描述输入字段预期值的提示信息,该提示会在输入字段为空时显示,并会在字段获得焦点时消失。

  6. 在CSS3中,能够实现背景裁剪的新特性是:______?
    答案:background-clip。background-clip 属性规定背景的绘制区域。它对应的值有3个:border-box(背景被裁剪到边框盒) 、padding-box (背景被裁剪到内边距框) content-box(背景被裁剪到内容框)。

  7. 在HTML5的新特性中,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法,结合JavaScript实现绘制图像的元素是:______?
    答案:canvas。注意:canvas元素本身是没有绘图能力的。所有的绘制工作必须在JavaScript内部完成。

  8. JavaScript语句,var a=10,b=20;alert(“a+b=”+a+b);执行结果是在浏览器窗口弹出:______?
    答案:在js中,字符串与数字相加,数字会被强制转换成字符串类型,在进行相加,也就是变成两个字符串的连接,所以结果是字符串“a+b=”+“10”+“20”= “a+b=1020”。

  9. JavaScript习题,var a=5,b=6;alert(a+b+”10”); 执行结果是在浏览器窗口弹出:______?
    答案:1110。与第8期不同的是,本题中先进行的是数字5与数字6的相加操作,等到的结果是11,再进行数字11与字符串“11”的相加,此时数字11会被转换成字符串“11”再进行两个字符串的连接,所以结果是1110。

  10. 在HTML5新特性中,用于定义文档页脚的标签是:______?
    答案

    标签定义document 的页脚。

  11. 在CSS3中,实现给元素添加圆角边框的属性是:______
    答案:border-radius属性。border-radius属性十分常用,让过去要切图才能实现圆角边框,现在只要一句CSS代码即可实现,并且对浏览器兼容性也很友好。

  12. JavaScript由3部分组成,分别是:ECMAScript,BOM和______
    答案:DOM。文档对象模型(DOM)描述了处理网页内容的方法和接口。

  13. 在jquery中,实现动画的函数是:_____?
    答案:animate()函数。animate()方法通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。

  14. 在CSS中,能够使文本水平居中的CSS属性是:______
    答案:text-align属性。text-align当其值为center的时候,文本内容就会水平居中;它的值还有可能是:left(居左),right(居右),justify(实现两端对齐文本效果),inherit(继承父元素的text-align属性值)。

  15. 在HTML的a标签中,实现在新窗口打开链接的标签属性是:_____
    答案:target属性。当它的值为_blank的时候就会实现在新窗口中打开,它的值还可以是_self(当前窗口中打开),_parent(父frame中打开),_top(整个窗口中打开)。

  16. var a=999; a++; alert(++a);请问执行后的弹出结果是:_____
    答案:1001。执行a++后的结果是1000,然后执行++a,得到的结果是1001,在执行alert()函数,所以弹出的结果是1001。

  17. 与16期的代码稍有不同,请仔细阅读,var a=888; ++a; alert(a++); 运行后弹出的结果是:______
    答案:889。执行到++a后的结果是889,alert(a++)的时候,先执行弹出,再执行a++,所以弹出的是889,而不是900。

  18. 在img标签中,当图像加载失败,会用替换文本来显示相关信息,那么,定义替换文本的属性是:_____
    答案:alt属性。用来为图像定义一串预备的可替换的文本。替换文本属性的值是用户定义的。

  19. 在CSS3中,实现文本阴影效果的新属性是:_____
    答案:text-shadow。我们能够规定水平阴影、垂直阴影、模糊距离,以及阴影的颜色。

  20. 在HTML标签中,定义最小的标题的是:_____
    答案

    标签。

    定义的标题由大到小。

  21. 用于播放HTML5音频文件的元素是:_____
    答案元素,还可以通过它的属性来控制音频的自动播放,循环播放,暂停等操作。

  22. var a; alert(a); 执行后弹出的结果是:_____
    答案:undefined。如果变量通过var声明,但并未初始化的时候,变量的值为undefined。

  23. 在jquery中,想要移除指定的DOM节点元素,使用的方法是:_____
    答案:remove()函数。该方法移除被选元素,包括所有文本和子节点。

  24. 在ECMAScript6中,定义一个变量只在所处的代码块起作用的关键字是:_____
    答案:关键字let。ES6 新增了 let 命令,用来声明变量。它的用法类似于 var,但是所声明的变量,只在 let 命令所在的代码块内有效。

  25. console.log(typeof null); 运行的结果是在控制台输出:_____
    答案:输出object。在javascript中,null值表示一个空对象指针,而这正是使用typeof操作符检测null值时会返回“object”的原因。

  26. console.log(typeof “3”); 运行的结果是在控制套输出:_____
    答案:”string”。因为”3”就是一个字符串String类型。

  27. 与26期稍有不同,仔细阅读,console.log(typeof +’3’); 运行结果是:_____
    答案:“number”。数字在字符串之前存在数字中的正负号(+/-)时,会被转换成数字。

  28. 在 HTML5 中,用于组合标题的元素是:______
    答案

    元素。用于对网页或区段的标题进行组合。

  29. 在HTML5中,用于规定输入字段是必填的属性是:_____
    答案:required属性。规定必须在提交之前填写输入字段,如果使用该属性,则字段是必填的。

  30. 在HTML5中,定义滑块控件的输入类型是:_____
    答案:range。定义带有slider控件的数字字段。

  31. 在HTML5中,实现元素可拖动的标签属性是:_____
    答案:draggable属性。为了使元素可拖动,可以把draggable属性设置为true。

  32. 在HTML5中,实现本地存储,且存储数据不受时间限制的方式是:_____
    答案:localStorage存储。使用localStorage可以简单地记录当前客户端用户对网站的访问次数。

  33. 在HTML5中,用于定义页面内容之外的内容标签是:_____
    答案

  34. 在HTML5中,用于描述文档或文档某个部分的细节的新标签是:_____
    答案

    标签。不过,目前只有chrome和safari浏览器支持此元素。

  35. 在CSS3中,可以规定背景图片的定位区域的属性是:______
    答案:background-origin属性。它的值可以是: content-box、padding-box 或 border-box 。

  36. 单词太长的话就超出某个区域,在CSS3中,实现文本强制文本进行换行的属性是:______?
    答案:word-wrap属性。当它的值等于break-word的时候,就可以实现文本强制换行,可以对单个单词进行拆分。

  37. 在CSS中,用于定义单词间距的属性是:______
    答案:word-spacing属性。它可以增加或减少单词间的空白。

  38. 在CSS中,规定文本段落首行的缩进的属性是:_____
    答案:text-indent属性。如果要实现首行空两个字符的话,text-indent:2em即可。

  39. 在js中,’1555’+3的运行结果是:______
    答案:15553。字符串与数字相加,数字会被转换成字符串,最后变成两个字符串拼接。

  40. 在JavaScript中,’1205’-3的运行结果是:______
    答案:1202。字符串与数字相减,字符串会被转换成数字再相减,等到的结果是1202。

  41. 在js中,if( [ ] instanceof Array) { alert(‘yes’) } else { alert(‘no’) } 的运行结果是弹出:______
    答案:“yes“。通过字面量方式创建的数组对象是属于Array类的一个实例,所以返回true。故弹出”yes“。

  42. 与41期稍有不同,仔细阅读,if( [ ] instanceof Object ){ alert(‘hello’); } else { alert(‘world’) }; 运行后结果是弹出:______
    答案:弹出”hello“。之所以[ ] instanceof Object返回true,是因为Array是object的子类。

  43. console.log(‘hello’+(1<2)?”world”:”me”); 运行后的结果是在控制台输出:______
    答案:输出world。因为+操作符的优先级高于三元操作符,执行顺序分别是:(1<2)得到 true,然后”hello”+true = “hellotrue”,最后进行三元操作符,得到”world“。

  44. 在HTML5中,用于定义导航链接的新元素是:______
    答案

  45. 在HTML5 Geolocation API中 ,实现获取用户位置的方法是:______
    答案:getCurrentPosition()方法。注意:鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的。

  46. 在HTML5中,input元素中用于定义数值输入域的类型是:______
    答案:number类型。number类型用于定义包含数值的输入域,还能够设定对所接受的数字的限定。

  47. 在HTML5中,input元素中用于定义选取时间(小时和分钟)的类型是:_____
    答案:time类型。type=“time”,现在大部分浏览器都支持此属性。

  48. 在HTML5中,input元素中用于定义邮件输入域的类型是:_____
    答案:email类型。在提交表单时,会自动验证email域的值。

  49. var a = [33, 2, 123]; console.log(a.sort());运行后输出的结果是:_____
    答案:[123, 2, 33]。当不带参数调用sort()时,数组元素以字母表顺序排序输出。

  50. var a = [1, 2, 3]; console.log(a.join());运行后的结果是输出:_____
    答案:1,2,3。数组的操作方法join是用来将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串的,不指定分隔符时,默认逗号分隔,所以输出1,2,3。

  51. var a = [1, 2, 3];console.log(a.join(“-“));运行后输出的结果是:_____
    答案:1-2-3。与上一期一样,但是这一期输出语句指定空格为“-”,所以输出:1-2-3。

  52. 以下代码运行后的输出结果是:_____
    var str1 = str2 = “web” ;
    (function(){
    var str1 = str2 = “前端教程” ;
    })();
    console.log(str2) ;
    答案:输出“前端教程”。虽然str2是匿名函数内部,但是并没有被var定义,所以会往上一级去寻找,找到并重新赋值成“前端教程”。

  53. 以下代码运行后的输出结果是:_____
    var str1 = str2 = “web” ;
    (function(){
    var str1 = str2 = “前端教程” ;
    })();
    console.log(str1) ;
    答案:输出“web”。代码中有两个str1,但是它们都用var定义了,处在不同的作用域,不会被覆盖,所以输出的str1是同一个作用域下的str1,故输出“web”。

  54. 以下代码运行后的输出结果是:_____
    var str1 = str2 = “web” ;
    (function(){
    var str1 = str2 = “课堂” ;
    console.log(str2) ;
    })();
    答案:输出“课堂”。因为str2没有被var定义,所以找到上一级的作用域下的str2,并把它的值覆盖了,所以输出“课堂”。

  55. 以下代码运行后的输出结果是:_____
    if ( 10 > 9 > 8 == true) {
    console.log(“html5”) ;
    } else {
    console.log(“css3”) ;
    }
    答案:输出“css3”。先比较10和9,10 > 9是成立的,此时返回的是true;然后true和8进行比较运算,此时会出现数据类型的转换,true会转换成数字1,再与8进行比较,1自然是小于8的,因此此处返回的是false;最后比较false和true,这两者自然是不等的,执行else里面的语句,输出“css3”。

  56. 以下代码运行后的输出结果是:_____
    var obj = {};
    obj.name = “first” ;
    var peo = obj ;
    peo.name = “second” ;
    console.log(obj.name) ;
    答案:输出“second”。关于变量类型,分为了两大类,一种是引用类型,一种是值类型。值类型相当于是重新创建了一个空间,然后将内容复制了一份放置到了空间当中。引用类型相当于是重新创建了一份地址,两个地址(obj和peo)都是指向一个存储空间的,那么此时修改任意一个都会对另一个造成影响。

  57. 在DOM对象中,获取元素的开始和结束标签之间的HTML的属性是:_____
    答案:innerHTML属性。该属性可以设置或返回元素之间的HTML。

  58. 在DOM对象中,可返回带有指定标签名的对象集合的方法是:_____
    答案:getElementsByTagName()方法。返回元素的顺序也是它们在文档中的顺序。

  59. 在DOM对象中,可以设置元素属性的方法是:_____
    答案:setAttribute() 方法。该方法添加指定的属性,并为其赋指定的值。如果这个指定的属性已存在,则仅设置/更改值。

  60. 在DOM对象中,实现创建元素节点的方法是:_____
    答案:createElement()方法。用于创建一个指定元素,所有主要浏览器都支持此方法。

  61. 在DOM对象中,实现把新的节点添加到指定节点的方法是:_____
    答案:appendChild()方法。此方法向节点添加最后一个子节点。

  62. 在DOM对象中,实现删除子节点的方法是:_____
    答案:removeChild()方法。此方法指定元素的某个指定的子节点。以 Node 对象返回被删除的节点,如果节点不存在则返回 null。

  63. 在BOM对象中,能够获取浏览器信息的对象是:_____
    答案:Navigator对象。Navigator 对象包含有关浏览器的信息,所有浏览器都支持该对象。

  64. 在BOM对象中,能获取客户端显示屏的信息的对象是:_____
    答案:Screen对象。Screen 对象包含有关客户端显示屏幕的信息。

  65. 在BOM对象中,能获取浏览器当前URL信息的对象是:_____
    答案:Location对象。Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。

  66. 在JavaScript数组中,实现向数组末尾添加一个元素的方法是:______?
    答案:push( )方法。此方法可向数组的末尾添加一个或多个元素,并返回新的长度。

  67. 在JavaScript数组中,实现对数组的元素进行排序的方法是:_____
    答案:sort( )方法。注意,数组在原数组上进行排序,不生成副本。

  68. 在JavsScript数组中,实现把数组的元素转成字符串,并且用指定的字符分隔开,默认是逗号的方法是:______
    答案:join( )方法。此方法返回一个字符串。该字符串是通过把数组的每个元素转换为字符串,然后把这些字符串连接起来。

  69. 在事件对象中,表示对象被双击时发生的事件:______
    答案:ondblclick事件。该事件会在对象被双击时发生。

  70. 在事件对象中,当对象失去焦点时会发生的事件是:______
    答案:onblur事件。该事件会在对象失去焦点时发生,常用在输入域里面。

  71. 在事件对象中,当在域的内容发生改变的时候会触发的事件是:______
    答案:onchange事件。该事件会在域的内容改变时发生。常用在输入域,下拉选择,单选多选组件中。

  72. 在事件对象中,表示监听键盘按键松开的是事件是:______?
    答案:onkeyup事件。该事件会在键盘按键被松开时发生。

  73. 在事件对象中,表示网页被加载完成的事件是:______?
    答案:onload事件。该事件会在页面或图像加载完成后立即发生。

  74. 在事件对象中,监听鼠标移动的事件是:______?
    答案:onmousemove事件。每当用户把鼠标移动一个像素,就会发生一个 mousemove 事件。

  75. 代码:console.log([] + [] + “foo”.split(“”)); 运行后,控制台输出的结果是:______?
    答案:f,o,o。在[] + []的运算过程中,由于使用到了+号,两个数组对象均调用了自己自带的toString()方法,将[]转换成了字符串,两个字符串相加还是一个字符串。”foo”.split(“”),将字符串分割成字符串数组,为[“f”, “o”, “o”]。最后一步,”” + [“f”, “o”, “o”],这时候 + 左侧是字符串,右侧是数组对象,数组对象依旧会调用自身的原型方法,将数组转换为字符串。

  76. 在HTML5的鼠标事件中,监听元素被拖动的事件是:______?
    答案:ondrag事件。

  77. 在html5的新事件中,当浏览器窗口被调整大小的时候会触发的事件是:______?
    答案:onresize事件。该事件在制作响应式的页面时候十分有用。

  78. 在input元素中,如果是隐藏域类型,type的值是:______?
    答案:type=”hidden”。这种类型的输入元素实际上是隐藏的。这个不可见的表单元素的 value 属性保存了一个要提交给 Web 服务器的任意字符串。

  79. 在CSS中,表示鼠标悬浮在a标签上方的伪类是:______?
    答案:hover伪类。常用于修改链接文字的样式。

  80. 在CSS中,实现把元素设置为固定定位,position的值应该是:______?
    答案:fixed。固定定位后,元素相对浏览器窗口来定位,在移动端布局十分常用。

  81. 在W3C标准中,实现元素半透明的css属性是:______?
    答案:opacity。该属性能够设置的值从 0.0 到 1.0。值越小,越透明。

  82. CSS盒子模型包括了:内容,边框,内边距和______?
    答案:外边距margin。我们可以把这4个属性转移到我们日常生活中的盒子(箱子)上来理解,日常生活中所见的盒子也就是能装东西的一种箱子,也具有这些属性,所以叫它盒子模式。

  83. 如果要去除a标签下面的默认下划线,可以给a标签添加css属性text-decoration,并把值设置为:______?
    答案:none。text-decoration 属性大多用于去掉链接中的下划线。

  84. 在CSS属性中,规定字体的粗细的属性是:______?
    答案:font-weight。默认值:normal。

  85. 在CSS属性中,设置元素的最大宽度的属性是:______?
    答案:max-width。该属性值会对元素的宽度设置一个最高限制。因此,元素可以比指定值窄,但不能比其宽。不允许指定负值。

  86. 在CSS属性中,用于清除元素浮动效果的属性是:______?
    答案:clear。属性值可以是:left(清除左浮动)、right(清除右浮动) 、both(清除左右浮动)、none(取消清除)、inherit(继承父元素的clear值)。

  87. 在HTML的input元素中,用于表单文件上传的类型是:______?
    答案:file类型。

  88. 在javascript字符串对象中,用于定位字符串中某一个指定的字符首次出现的位置的方法是:______?
    答案:indexOf()方法。如果指定字符串存在,就返回它首次出现的位置,反之返回:-1。

  89. 在字符串String对象中,实现字符串替换的方法是:______?
    答案:replace()方法。使用此方法在字符串中用某些字符替换另一些字符。

  90. 在JavaScript Number 对象中,可以四舍五入为指定小数位的数字的方法是:______?
    答案:toFixed()方法。可以传入一个参数作为规定小数的位数,是 0 ~ 20 之间的值。

  91. 在JavaScript Date对象中,能够获取今天是星期几的方法是:______?
    答案:getDay()方法。

  92. 在JavaScript Math对象中,实现生成一个0~1之间的随机数的方法是:______?
    答案:random( )方法。

  93. 在javascript的全局函数中, 把字符串作为脚本代码来执行的方法是:______?
    答案:eval( )方法。该函数计算 JavaScript 字符串,并把它作为脚本代码来执行。如果参数是一个表达式,eval() 函数将执行表达式。

  94. 在javascript全局函数中,解析一个字符串并返回一个整数的方法是:______?
    答案:parseInt()方法。该函数可解析一个字符串,并返回一个整数。注意: 只有字符串中的第一个数字会被返回。

  95. 在JavaScript 全局函数中,检测某个值是否是数字的函数是:______?
    答案:isNaN()。如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。

  96. 在JavaScript 算术运算符中,代表求余数的运算法是:______?
    答案:% 运算法。

  97. 在JavaScript 算术运算符,表示自增的运算法是:______?
    答案: ++ 运算符。

  98. 在JavaScript 比较运算符,表示恒等于(值和类型均相等)的运算符是:______?
    答案:=== 运算符。

  99. 在JavaScript 比较运算符中,表示值与类型均不等(不恒等于)的运算符是:______?
    答案:!== 运算符。

  100. var a=999; a++; alert(++a); 请问执行后弹出的结果是:______?
    答案:1001。执行a++后的结果是1000,然后执行++a,得到的结果是1001,再执行alert()函数,所以结果是1001。

你可能感兴趣的:(web前端开发面试题,web前端)