1、用纯css创建一个三角形的原理:

.demo{
width:0;
height: 0;
border: 5px solid transparent;
border-left-color: red;
}

2、为什么要初始化css样式

不同的浏览器堆标签的默认值是不同的,如果没有对css初始化往往会出现浏览器之间的页面显示差异。
不建议使用*{padding:0;margin:0;}

3、解释为何要清除浮动?清除浮动的方式

1)、给父级div定义高度
2)、常规使用class
.clearfix::before, .clearfix::after{
content:"";
display:table;
}
.clearfix::after{
clear:both;
}
.clearfix{
*zoom:1; //ie浏览器的专有属性,设置或者检索对象的缩放比例
}
3)、sass编译的时候,浮动元素的父级div定义伪类:after
&::after, &::before{
content: "";
visibility: hidden;
display:block; //使生成的元素以块级元素显示,占满剩余空间
height:0;
clear:both; //避免生成内容破坏原有布局高度
}

4、display:none和visiblity:hidden的区别

display:none会让元素完全从渲染树消失,渲染的时候不占据任何空间;visibility:hidden不会让元素从渲染树消失,渲染时元素继续占据空间,内容不可见。

5、js的数据类型:

undefined、null、string、boolean、number、symbol(es6)、object(引用数据类型)

6、什么是闭包?有什么作用

内部函数在外部被调用的时候产生闭包,只有闭包才可以实现在外部调用和改变内部函数的属性
如果内部的函数被保存到外部,它一定生成闭包。常用于事件处理程序和回调。
缺点:闭包会导致原有作用域链不释放,造成内存泄漏
作用:

  • 实现公有变量:函数累加器
  • 可以做缓存:存储结构
  • 可以实现封装,属性私有化
  • 模块化开发,防止污染全局变量

7、简述cookie:

cookie是web浏览器存储的少量数据。cookie数据会自动在浏览器和服务器之间传输。
cookie默认有效期为浏览器会话,一旦用户关闭浏览器,数据就丢失,通过设置 >
max-age = seconds属性设置浏览器cookie的有效期。
cookie属性有名、值、max-age、path、domain、secure

8、js有哪些方法定义对象

  • 对象字面量:var obj = { }
  • 构造函数:var obj = new Object();
  • Object.create(): var obj = Object.create(Object.prototype);

9、函数内部arguments变量有哪些特性,如何将它转化为数组

  • arguments是一个对应于传递给函数的参数的类数组对象
  • arguments对象是所有(非箭头)函数中都可用的局部变量
  • arguments.length本次函数调用时传入函数的实参数量
    //定义一个可以加任意个数字的函数
    function adder(base, /, n2, ... /) {
    base = Number(base);
    for (var i = 0; i < arguments.length; i++) {
    base += Number(arguments[i]);
    }
    return base;
    }
  • arguments.callee 属性包含当前正在执行的函数(使用这个属性进行递归调用时需注意 this 的变化)
  • 转换为数组:var args = Array.prototype.slice.call(arguments, 0);

10、call和apply的作用和区别

call/apply可以改变函数运行时this指向,两者的区别是传参列表不同。

  • call 需要把实参按照形参的个数传进去(就是实参个数==形参个数)
  • apply 需要传一个arguments 实参列表

web前端开发面试题(附答案)-3的更多相关文章

  1. web前端开发面试题(附答案)-1

    1.浏览器中输入url到网页显示,整个过程发生了什么 域名解析 发起tcp三次握手 建立tcp连接之后发起htttp请求 服务器端响应http请求,浏览器得到html代码 浏览器器解析html代码,并 ...

  2. web前端开发面试题(附答案)-2

    1.label是什么标签,有什么作用?和for属性使用的作用? label标签来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件上. label 元素不会向用户呈现 ...

  3. Web前端开发面试题赋答案

    第一部分:用CSS实现布局 让我们一起来做一个页面 首先,我们需要一个布局. 请使用CSS控制3个div,实现如下图的布局. 第二部分:用javascript优化布局 由于我们的用户群喜欢放大看页面 ...

  4. web前端开发面试题(答案)

    1.xhtml和html有什么区别? HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言最主要的不同:XHTML 元素必须被正确地嵌套.XHTML 元素必须被关闭.标签名必须 ...

  5. 【理论面试篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题

    ##2017.10.30收集 面试技巧 5.1 面试形式 1)        一般而言,小公司做笔试题:大公司面谈项目经验:做地图的一定考算法 2)        面试官喜欢什么样的人 ü  技术好. ...

  6. 【编码题篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题

    编写一个方法 求一个字符串的字节长度假设:一个英文字符占用一个字节,一个中文字符占用两个字节 function GetBytes(str){ var len = str.length; var byt ...

  7. web前端开发面试题(Vue.js)

    1.active-class是哪个组件的属性?嵌套路由怎么定义? 答:vue-router模块的router-link组件. 2.怎么定义vue-router的动态路由?怎么获取传过来的动态参数?  ...

  8. Web前端开发面试题

    1. 以下的代码有问题吗?如果有你觉着应该如何修改? for(int i=0; i<list.size(); i++) {  .....  .....  if(...)  {   list.re ...

  9. web前端开发面试题(未完待续)

    一.HTML与XHTML的不同:1)XHTML元素必须被正确地嵌套 2)元素必须被关闭   如:<h1>--</h1>关闭 3)标签名必须用小写字母 4)XHTML文档必须有根 ...

随机推荐

  1. Jesus Is Here[递推]2015沈阳online

    题目链接https://nanti.jisuanke.com/t/41175 自从百度之星初赛一上自己做出来一道打表找规律的题之后,这种膨胀的感觉让我近乎丧失理智,今天这道题我死死盯了两三个小时硬是没 ...

  2. 细数 SharedPreferences 的那些槽点 !

    前言 最近在处理一个历史遗留项目的时候饱受其害,主要表现为偶发性的 SharedPreferences 配置文件数据错乱,甚至丢失.经过排查发现是多进程的问题.项目中有两个不同进程,且会频繁的读写 S ...

  3. python 17 内置模块

    目录 1. 序列化模块 1.1 json 模块 1.2 pickle 模块 2. os 模块 3. sys 模块 4. hashlib 加密.摘要 4.1 加密 4.2 加盐 4.3 文件一致性校验 ...

  4. HDU 6052

    题意略. 思路:我们单独考虑每种颜色的贡献,颜色c对答案的贡献 == 含有c的矩形个数,这就是在考查我们计数的能力,暴力可过. #include<bits/stdc++.h> #defin ...

  5. [Python] socket实现TFTP上传和下载

    一.说明 本文主要基于socket实现TFTP文件上传与下载. 测试环境:Win10/Python3.5/tftpd64. tftpd下载:根据自己的环境选择下载,地址 :http://tftpd32 ...

  6. MSIL实用指南-数据类型转换

    一.类的强制转换1.转换成某个类用Castclass指令.实例代码:ilGenerator.Emit( OpCodes.Castclass , typeof(ClassA) ); 2.转换成某个值类型 ...

  7. LeetCode 笔记

    Valid Sudoku 数独整体能够满足的情况是比较复杂.参考:编程之美 关于数独问题的讨论 这道题的解法可能简单一点,因为对输入进行来限制.只是去判断是否是一个数独数独的形式相比较来说也是较简单的 ...

  8. HDU5988 - 2016icpc青岛 - G - Coding Contest 费用流(利用对数化乘为加

    HDU5988 题意: 有n个区域,每个区域有s个人,b份饭.现在告诉你每个区域间的有向路径,每条路有容量和损坏路径的概率.问如何走可以使得路径不被破坏的概率最小.第一个人走某条道路是百分百不会损坏道 ...

  9. CodeForces - 940E - Cashback +贪心+DP

    传送门:CodeForces - 940E - Cashback 题意:在一个长度为n的数组中,可以分出长度为 k 连续的多个数组b(每个数组 b 的 k 可不相同),然后,可以对每个数组 b 进行删 ...

  10. Newtonsoft.Json 序列化

    当我们对一个json数组进行反序列化用Newtonsoft.Json.JsonConvert.DeserializeObject<T>() 通常会报此错误 Newtonsoft.Json. ...