格力2020秋招前端岗笔试题

1.如何为所有<h1>添加背景色()

A、h1.all {background-color: #111111;}

B、h1 {background-color: #111111;}

C、all.h1 {background-color: #111111;}

D、都不对

2.JS定义方法不正确的是()

A、function a := function(){};

B、var a() = function{};

C、var string:a = (){};

D、都不正确

函数自定义的三种方式:

1. 函数声明式:需给函数命名,可声明提前

    function 函数名 () {}

2. 函数表达式/匿名函数:无需给函数命名,不可声明提前(推荐)

    var 变量名 = function () {};

3. 构造函数:

    var 函数名 = new Function();

补充:

4. 立即执行函数:

    (function () {}) ();    //推荐

    (function () {} ());

    !function () {} ();

5. 箭头函数:ES6新增

    没有参数时:

        ( ) => {  }

    只有一个参数时:

        参数 => {  }

        (单一参数) => {  }

    多参数时:

        (参数1,参数2,...,参数n) => {  }

        (参数1,参数2,...,参数n) => 表达式    

        //相当于 (参数1,参数2,...,参数n) => {return 表达式}

3.padding: 0 12px 20px 12px; 中的4个值按顺序代表的方向是什么()

A、代表:左,右,上,下

B、代表:左,上,右,下

C、代表:上,右,下,左

D、代表:上,下,左,右

4.JS中将数组所有元素放到字符串中,并以","分隔()

A、pop(",")

B、join(",")

C、slice(",")

D、unshift(",")

pop()    

定义:删除并返回数组的最后一个元素。

语法:arrayObject.pop()

返回值:arrayObject的最后一个元素。

说明:该方法将删除arrayObject的最后一个元素,把数组长度减1,并且返回它删除的元素。如果数组已经为空,则pop()不改变数组,并返回undefined值。

join()    

定义:把数组中的所有元素放入一个字符串,元素通过指定的分隔符进行分隔。

语法:arrayObject.join(separator)    

参数:separator 可选。指定要用的分隔符,若省略该参数,则默认使用逗号为分隔符。

返回值:返回一个字符串。

说明:该方法把arrayObject的每个元素转换成字符串,然后再把这些字符串连接起来,每个元素之间插入separator分隔符。

slice()

定义:从已有的数组中返回选定的元素。

语法:arrayObject.slice(start, end)    arrayObject.slice(start)

参数:该参数为数组下标,从0开始。

            start 必需。规定从何处开始选取。若为负数,则从数组尾部开始算,如-1指的是最后一元素。

            end 可选。规定从何处结束选取。若没有指定这个参数,则切分的数组包含从start到数组结束的所有元素。若为负数,则从数组尾部开始算起的元素。

返回值:返回一个新的数组,包含从start到end(不包括该元素)的arrayObject中的元素。

说明:该方法不会修改数组,只是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。

unshift()

定义:向数组的开头添加一个或更多元素,并返回新的长度。

语法:arrayObject.unshift(newElement1, newElement2, ..., newElementX)

参数:newElement1 必需。向数组添加的第一个元素。newElement2 可选。向数组添加的第二个元素。

返回值:返回arrayObject的新长度。

说明:该方法直接修改原有的数组。把参数插入arrayObject的头部,并将已存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。

5.css那个不属于尺寸属性()

A、height

B、line-height

C、min-width

D、top

6.关于ES6声明变量,以下哪个代码段不会报错()

A、const a;

B、let a = 1;
      let a = 2;

C、var a = 1;
      var a = 2;

D、{
      let a = 1;
      }
     var b = a;

7.正则里的 $ 描述正确的是()

A、匹配数字

B、匹配字符串的开始

C、匹配字符串的结束

D、都不是

^是正则表达式匹配字符串开始位置

$是正则表达式匹配字符串结束位置

8.关于ES6解构表达式

1

let [a = 1, b] = []; 

描述正确的是()

A、a = undefined, b = undefined

B、a = 1, b = 1;

C、a = 1, b = undefined;

D、语法报错

   

9.关于ES6解构表达式

1

let [a,b, c,d, e] = "hello"

描述正确的是()

A、e = "hello";其它都为undefined

B、当中 a = "h", b = "e";

C、语法报错

字符串也可以解构赋值,因为此时字符串被转换成一个类似数组的对象

let [a,b, c,d, e] = "hello"; 
console.log(a);    //h
console.log(b);    //e
console.log(c);    //l
console.log(d);    //l
console.log(e);    //o

类似数组的对象都有一个 length 属性,因此还可以对这个属性解构赋值

let {length : len} = 'hello';
console.log(len);    //5

10.关于ES6 箭头函数 ()=>{} ,描述错误的是()

A、当箭头函数没有参数或有大于等于两个的参数时,必须使用括号,如:let a = ()=>{} 或 let a = (b, c) => {};

B、箭头函数没有arguments 绑定

C、箭头函数的this是函数定义的对象,而不是使用函数的对象

D、var f = v => v;以上语法有误

11.HTML5的Web存储对象有两个,分别是【 localStorage 】和 【 sessionStorage 】

12.Http请求返回码(status code)中,代表[未授权的请求]的代码是【 401

400(错误请求) 服务器不理解请求的语法。 

401(身份验证错误) 此页要求授权。您可能不希望将此网页纳入索引。 

403(禁止) 服务器拒绝请求。

404(未找到) 服务器找不到请求的网页。例如,对于服务器上不存在的网页经常会返回此代码。

13.当HTML页面加载完毕时触发的事件是window.onload = function(){}

14.JS中,使用什么属性可以对Dog类进行添加方法eat(   )
提示:
Dog.【 prototype 】.eat = function(   ){}

15.CSS3中,能使用div的宽度变化有2秒的过渡效果的属性是
提示:
div {
  【 transition 】: width 2s;
}

16.描述一下脚本<script>放在<head>和放到<body>底部的区别

放<head>中的情况:脚本会优先加载,但加载过程中,<body>还没加载完,会使脚本访问不到<body>中的元素。
放<body>底部:脚本在<body>加载后加载,能够保证脚本有效地访问<body>的元素。
例外情况:脚本中没有访问<body>元素的情况下,两种加载方式效果一致。

17.请使用Promise封装Ajax操作
原始的Ajax操作如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

var onSuccess = function(result){}; //成功的回调

var onFail = function(error){}; //失败的回调

var req = new XMLHttpRequest();

req.open("POST""www.baidu.com"true);

req.onload = function(){

  if(req.readyState === 4 && req.status === 200){

    onSuccess(req.response);

  else {

    onFail(req.statusText);

  }

}

req.onerror = function(){

  onFail(Error("网络异常"));

}

官方解析:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

return new Promise(function(resolve, reject){

   var req = new XMLHttpRequest();

   req.open("POST""<a href="http://www.baidu.com" target="_blank">www.baidu.com", true);

   req.onload = function(){

     if(req.readyState === 4 && req.status === 200){

       resolve(req.response);

     else {

       reject(req.statusText);

     }

   }

   req.onerror = function(){

     reject(Error("网络异常"));

   }

 });</a>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值