Yushi前端笔试题一期

Posted 黑子Kuroko

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yushi前端笔试题一期相关的知识,希望对你有一定的参考价值。

1、描述以下6种错误类型

Syntaxerror

语法错误。

常见:1、变量名不符合规范;2、给关键字赋值。


ReferenceError

引用错误,要用的变量没找到。

常见:1、引用了不存在的变量;2、给一个无法被赋值的对象赋值。


TypeError

类型错误。

常见:1、调用不存在的方法;2、new关键字后接基本类型。


RangeError

范围错误,参数超范围。

常见:1、数组长度为负数;2、Number对象的方法参数超出范围。


EvalError

非法调用 eval( ) 。

在ES5以下的javascript中,当eval()函数没有被正确执行时,会抛出evalError错误。


URIError

URI不合法。

URI相关参数不正确时抛出的错误,主要涉及encodeURI、decodeURI()、encodeURIComponent()、decodeURIComponent()、escape()和unescape()六个函数。

 

2、两种export 方式

export default const a = 1

const a = 1

export default a

为什么前者这样无效,而后者却可以?

请给出正确的导出方法及其对应的导入方法。

原因:

export default命令的本质是将后面的值,赋给default变量,所以可以直接将一个值写在export default之后,而不能跟变量声明语句。

正确写法一:

export var a = 1

// 对应导入写法:

import a from xxx

正确写法二:

var a = 1

export default a

// 对应导入写法:

import a from xxx

 

3、补全下方css代码实现水平垂直居中

.center

            width: 400px;

            height: 400px;

            background: #0f0;

            /* todo... */

           position: absolute;

           top: 50%;

           left: 50%;

           margin-top: -200px;

           margin-left: -200px;

       

 

4、手写indexOf

 myIndexOf('hello yushi','world')

// 输出: -1

myIndexOf('hello yushi','yushi')

// 输出: 6

function myIndexOf(str, val)

        // todo...

        var strLen = str.length, valLen = val.length

        for (var i = 0; i < strLen; i++)

            var matchLen = i + valLen

            var matchStr = str.slice(i, matchLen)

            if (matchLen > strLen)

                return -1

            

            if (matchStr === val)

                return i

            

        

        return -1

    

以上是关于Yushi前端笔试题一期的主要内容,如果未能解决你的问题,请参考以下文章

前端笔试题

前端笔试题[1]

前端笔试题面试题记录(上)

WEB前端面试的笔试题

前端笔试题总结

前端笔试题总结