前端面试——记CVTE从笔试到技术面

笔试

一:CSS选择器权重计算规则

1.第一等:代表内嵌样式;如:style=" ",权重值为1000.
2.第二等:代表ID选择器;如:#content,权重值为0100.
3.第三等:代表类,伪类和属性选择器;如:.content,权重值为0010.
4.第四等:代表元素和伪元素选择器;如:div p,权重值为0001.
5.第五等:代表通配符,子元素选择器和相邻兄弟选择器等;如:*、>、+,权重值为0000.
6.继承的样式没有权重值.
7.!important;
  !important的作用是提升优先级,换句话说,加了这句的样式的优先级是最高的(比内嵌的优先级还高)。
以前从没考虑过属性,这次考到了属性的权值

二.js对象的属性名可以是什么值,对象属性的值可以是什么值?

属性名就是普通的变量命名方式,属性值可以是字符串,数字,等各种内容。

三.margin属性值

如果是三个值的话表示,上,左右,下。

四.ECMA对象的数据属性和访问器属性

4.1ECMAscript的数据属性
configurable表示,属性是否能通过delete删除,默认值是true;
enumerable表示,属性是否能用for in 遍历,默认值是true;
writable表示能否修改属性值,默认值是true;
value默认值是undefined。
可以用Object.defineProperty(person,"name",{});来定义对象属性的数据属性
注意:(1)一旦把属性定为不可配置的,就不能把它变成可配置了,此时,再调用Object.defineProperty();方法修改除writable之外的特性,都会导致错误。
(2)如果调用了这个方法,则除了value之外的数据属性都是都是false。
(3)直接定义在对象上的属性,configurable和enumerable值都是true,这个注意点是要优先于(2)的。
(4)IE8是第一个实现这个方法的浏览器版本。
4.2ECMAscript的访问器属性
configurable
enumerable
get
set

代码实现链接,内有代码验证链接。

五.属性遍历的一些操作

1对象名.hasOwnProperty(name),遍历对象上非原型链上的属性
2for in,遍历整个原型链上enumerable是true的属性
3自定义方法,遍历原型上的属性,hasPrototypeProperty(对象名)(如果实例中重写了,会被覆盖,遍历不到)
4Object.getOwnPropertyNames(对象名,name),属性遍历,包括不可枚举的属性

可以得出规律:
obj.hasOwnProperty,hasPrototypeProperty<for in <Object.getOwnPrototypeNames()

//定义hasPrototypeProperty方法
 function hasPrototypeProperty(obj,name){
    if(!obj.hasOwnProperty(name)&&(name in obj)) return true;
    else return false;
 }
    function Person(){
  this.name = "zhangsan";
  this.sex = "nv";
}
var person = new Person();
Person.prototype.age = "12";
for(var i in person){//2.遍历整个原型链上可枚举的属性
   console.log(person[i]);//输出zhangsan nv 12
}
console.log(person.hasOwnProperty("name"));//1.只包含非原型的
console.log(hasPrototypeProperty(person,"age"));//3.只包括原型上的,如果实例中属性覆盖则,返回false
person.age = "13";
console.log(hasPrototypeProperty(person,"age"));//输出false
Object.defineProperty(person,"age",{enumerablle:false})
var keys = Object.getOwnPropertyNames(person);//4返回包括不可枚举的属性
console.log(keys);//name,sex,age

六.代码题

1.柯里化函数:把一个需要传入多个参数的函数变成只需要传入一个参数的函数

function add(x,y,z){return x+y+z;}
function add2(x){
  return function(y){ return function(z){
      return x+y+z;
}}

}
console.log(add(1,2,3));//输出6
console.log(add2(1)(2)(3));//输出6

2.实现(10).add(20).reduce(30).add(2)结果为10+20-30+2=2

Number.prototype.add = function(m){
        return this+m;
    }
    Number.prototype.reduce = function(n){
        return this+n;
    }
    console.log((10).add(20).reduce(3).add(2));

3.js闭包和异步操作的考察

function fn(){
        for(var i=0;i<=4;i++){
            var tc = setTimeout(function(i,tc){
                console.log(i);
                clearTimeout(tc);
            },i,tc);
        }
    }
    fn();//1,2,3,4

4.js继承机制的考察

function Verhical(w){
        this.w = w;
    }
    Vehical.prototype.getW = function(){
        return this.w;
    }

    function Bicycle(w){this.w = w;}
    Bicycle.prototype = _____;//new Vehical(),new Vehical(2),new Vehical(4)都可以,括号里是什么没关系
    var bicycle = new Bicycle(2);
    console.log(bicycle.getW());//输出为2

一面

1.首先问项目,简单介绍一下自己做的项目
2.之后是介绍一下浮动,如何清除浮动
3.水平排列3个div,两边的定宽,如何让中间的随着两边的自适应在页面中间。
4.position定位的概念,position的几个取值,以及代表的含义。
5.h5新增的元素。.
6.localstorage和sessionstorage,cookie的区别,三者的过期时间?
7.js可以直接访问cookie么?如何禁止js访问cookie?
可以,用document.cookie
禁止的话用http-only,设置为false,js就不能访问cookie了。
8.http协议和tcp协议的区别,以及三次握手,四次挥手。
9.快速排序的思想
未完待续
欢迎大家留言补充

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,657评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,662评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,143评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,732评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,837评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,036评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,126评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,868评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,315评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,641评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,773评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,859评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,584评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,676评论 2 351

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,637评论 18 139
  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    程序员poetry阅读 114,318评论 24 450
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 3,462评论 1 19
  • 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:...
    秀才JaneBook阅读 2,341评论 0 25
  • o、引言 本文是参加永澄老师目标管理社群的首次附加任务的作业。 【附加任务】任务内容:书写简书文章一篇,说明自己正...
    李云清阅读 529评论 0 0