## 一、不定項選擇題(每題3分,共30分)
### 1. 在HTML中,Location對象的 ( A ) 屬性用于設置或檢索URL的端口號。
A. host
B. hostname
C. pathname
D. href
### 2. 關于正則表達式聲明6位數字的郵編,以下代碼正確的是( C )
A .var reg = /\d{6}/;
B .var reg = \d{6}\;
C. var reg = /^\d{6}/;
D. var reg = new RegExp("\d{6}");
### 3. 下列哪個操作是W3C標準定義的阻止事件向父容器傳遞:( C )
A . e.preventDefault()
B. e.cancelBubble=true
C. e.stopPropagation()
D. e.stopImmediatePropagation()
### 4. 以下關于盒子模型描述正確的是:( A )
A. 標準盒子模型中:盒子的總寬度 = 左右margin + 左右border + 左右padding + width
B. IE盒子模型中:盒子總寬度 = 左右margin + 左右border + width
C. 標準盒子模型中:盒子的總寬度 = 左右margin + 左右border + width
D. IE盒子模型中:盒子總寬度 = width
### 5. 使用CSS的flexbox布局,不能實現以下哪一個效果 ( D )
A . 三列布局,隨容器寬度等寬彈性伸縮
B. 多列布局,每列的高度按內容最高的一列等高
C. 三列布局,左列寬度像素數確定,中、右列隨容器寬度等寬彈性伸縮
D. 多個寬高不等的元素,實現無縫瀑布流布局
### 6. 關于HTTP協議,下面哪個說法是正確的? ( B )
A. 一個HTTP請求返回的HTTP狀態碼中,304表示臨時重定向。
B. RESTful 接口中,利用HTTP協議的method字段來描述要對資源操作的方式,比如GET表示獲取資源,POST表示新增一個資源,PUT表示更新資源,DELETE 表示刪除資源等等。
C. 以下是一個Http鏈接的response 的響應頭: GET /xxx/xxx/js/lib/test.js HTTP/1.1 Host: 127.0.0.1 Connection: keep-alive Pragma: no-cache Cache-Control: no-cache Accept: */*
D. HTTP協議是有狀態協議。
### 7. 以下代碼控制臺輸出的結果是什么? ( C )
> const promise = new Promise((resolve, reject) => {
>
> ? console.log(1);
>
> ? resolve();
>
> ? console.log(2);
>
> })
>
> promise.then(() => { console.log(3); })
>
> setTimeout(()=> console.log(4),0)
>
> console.log(5);
A. 5 1 2 3 4
B. 1 2 3 4 5
C. 1 2 5 3 4
D. 5 1 2 4 3
### 8. 下列關于call與apply描述正確的有:( ABCD )
A. call,apply都屬于Function.prototype的一個方法,它是JavaScript引擎內在實現的,因為屬于Function.prototype,所以每個Function對象實例(就是每個方法)都有call,apply屬性.
B. 已知變量foo,那么foo.call(this, arg1,arg2,arg3) == foo.apply(this, arguments) == this.foo(arg1, arg2, arg3);
C. 兩個方法產生的作用是完全一樣的;
D. call只能單個參數傳入,apply可以通過數組的方式傳入參數
### 9. 以下屬于vue指令的有:( ABC )
A. v-if
B. v-model
C. v-bind:class
D. v-focus
### 10. 下列關于vuex說法找那個錯誤的是:(D)
A. state中保存著共有數據
B. 改變state中的數據只能通過mutations中的方法,且mutations中的方法必須是同步的
C. actions中的異步方法需要通過commit到mutations中通過state修改
D. 以上都不正確
## 二、問答題(每題5分,共40分)
### 1. JS的基本數據類型有哪些?
### 2. 如何用CSS創建一個三角形?
### 3. 元素水平垂直居中的方法有哪些?
### 4. 數組去重的方法有哪些?(至少兩種方法)
### 5. 給定數組[1,3,5,7,8,12],找出數組中最大的值?
### 6. 實現如下語法的功能:var a = add(2)('3')(4)(5); // 14
### 7. 實現如下語法的功能:var a = (10).plus(2).minus(8); //4
### 8. 判斷變量a是數組的方法有哪些?
## 三、編程題(每題15分,共30分)
### 1. 實現一個打點計時器,要求:
1、從 start 到 end(包含 start 和 end),每隔 100 毫秒 console.log 一個數字,每次數字增幅為 1
2、返回的對象中需要包含一個 cancel 方法,用于停止定時操作
3、第一個數需要立即輸出
4、支持promise調用
> function count(start, end) {
>
> // TODO
>
> }
### 2. 已知 fn 為一個預定義函數,實現函數 curryIt,調用之后滿足如下條件:
1、返回一個函數 a,a 的 length 屬性值為 1(即顯式聲明 a 接收一個參數)
2、調用 a 之后,返回一個函數 b, b 的 length 屬性值為 1
3、調用 b 之后,返回一個函數 c, c 的 length 屬性值為 1
4、調用 c 之后,返回的結果與調用 fn 的返回值一致
5、fn 的參數依次為函數 a, b, c 的調用參數
例如:
> var fn = function (a, b, c) {return a + b + c}; curryIt(fn)(1)(2)(3);
> // 6
function curryIt(fn) {
}
- 前端
- C1-Javascript
- H5圖片分塊和斷點續傳
- JavascriptPatterns[Stoyanstefanov]
- macotask和microtask
- 前端代碼生成器
- 跨域
- 頁面回到頂部滾動按鈕實現
- C2-CSS
- 瀏覽器的一些單位
- 盒模型
- 移動端判斷橫豎屏
- C3-框架
- ReactNative
- 開發環境搭建(安卓篇)
- Vue
- vue+pdfjs使用
- vue+typescript使用實踐
- vue+webpack3.x集成typescript
- Vue源碼3
- vue源碼分析1
- vue源碼分析2
- vue筆記
- C4-工具
- git
- Gitlab-CICD
- mock規則
- vscode-settings
- webpack自定義命令,切換代理地址
- 正則表達式
- 深入淺出webpack
- C5-Node
- express
- express源碼閱讀
- nightmare使用指南
- 爬蟲1.0
- C6-微信
- 微信
- C7-Canvas
- 基礎API
- 前端隨筆筆記
- 后端
- C1-Java
- shiro
- C2-Linux
- ffmpeg
- ITerm
- Linux
- MongoDB安裝
- MySql安裝
- Ngnix反向代理
- 常見錯誤
- 備忘
- mac
- 備忘-Work
- 備忘Link
- 服務器資源
- 教程
- Hexo個人博客搭建筆錄
- 文檔
- CSS編碼規范
- 前端編碼規范
- 隨筆
- 整理
- 正則
- 鏈接收藏
- 面試
- CodeWars題庫
- CodeWars題庫(二)
- Java社招面試題
- Java面試
- Web面試
- 前端筆試題
- 筆試題