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. 借助腾讯云的云函数实现一个极简的API网关

    借助腾讯云的云函数实现一个极简的API网关 Intro 微信小程序的域名需要备案,但是没有大陆的服务器,而且觉得备案有些繁琐,起初做的小程序都有点想要放弃了,后来了解到腾讯云的云函数,于是利用腾讯云的 ...

  2. SQL奇技淫巧(01):给查出的数据排序编个号【row_number() over(order by c)】(mysql,db2,oracle,sqlserver通用)

    我们天天都在跟数据库打交道,写下的代码不计其数,写下的SQL更是可以绕地球几圈.这里收集关于SQL的神奇语法及用法,虽然你可能没有用过,但这些SQL却可以在关键的时候,派上用场. 我对SQL语句的理解 ...

  3. sql建表经验总结——主要是建表现象

    在建表方面你都有哪些感悟? 见过的建表的一些现象: 1,一对多业务,有时候在主表见一个字段xxIds,然后存多表的id,多个英文逗号隔开,不知道这样好不好? 2,大部分字段建成varchar(50), ...

  4. 带你了解什么是Push消息推送

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 如果有看我最近文章的同学可能就知道我在公司负责的是一 ...

  5. PHP文件基础操作

    文件的基本操作:(更多) fopen():文件打开 $file = fopen("file.txt","r+"); fopen()函数的参数是目标文件的路径和文 ...

  6. 【Appium】Appium+Python环境搭建

    环境准备: 1.jdk 2.android-sdk 3.python 4.Node.js 5.appium 6.Appium-Python-Client 1. 下载jdk1.7:http://www. ...

  7. [python]python列表、元组

    1. 列表和元组简介 列表:用中括号[]包裹,元素的个数及元素的值可以改变. 元组:用小括号()包裹,不可用更改. 通过切片运算[]和[:]可以得到子集. 2.列表 示例: List = [1, 2, ...

  8. POJ 2528 Mayor's posters (线段树+区间覆盖+离散化)

    题意: 一共有n张海报, 按次序贴在墙上, 后贴的海报可以覆盖先贴的海报, 问一共有多少种海报出现过. 题解: 因为长度最大可以达到1e7, 但是最多只有2e4的区间个数,并且最后只是统计能看见的不同 ...

  9. Codeforces Technocup 2017 - Elimination Round 2 E Subordinates(贪心)

    题目链接 http://codeforces.com/contest/729/problem/E 题意:给你n个人,主管id为s,然后给你n个id,每个id上对应一个数字表示比这个人大的有几个. 最后 ...

  10. 简单粗暴详细讲解javascript实现函数柯里化

    函数柯里化(黑人问号脸)???Currying(黑人问号脸)???妥妥的中式翻译既视感:下面来一起看看究竟什么是函数柯里化: 维基百科的解释是:把接收多个参数的函数变换成接收一个单一参数(最初函数的第 ...