前端面试题之js篇
前端面试也可为是鱼龙混杂,各公司面试题的种类也大不相同,有的公司注重基础语法,面试题偏于ES,有的公司偏于页面逻辑,会考差一些js的应用,现将遇到过的题和典型的题整理一下。
- 1. 0.2-0.1 == 0.3-0.2 返回值为true or false
- 题解:此题考查的时浮点数的加减
- 2. 截取字符串中 'abcdefgh'中的def
- 题解:此题考查的是字符串函数 substring(),substr(),slice()的用法
- 3. 统计字符串中出现最多的字符与出现的次数 str = 'asdfgertydfgsdfsdfertasdfvbsdf'。
- 题解:
- var json = {};
- for( var i = 0; i < str.length; i++ ){
- if(!json[str[i]]){
- json[str[i]] = 1;
- }else{
- json[str[i]] = ++json[str[i]]
- }
- }
- 到此为止已经将个字符出现的次数记录到json变量中,接下来要遍历json,找出出现次数最多的字符与次数
- var maxstr, max = 0;
- for( var j in json ){
- if( json[j] > max ){
- max = json[j];
- maxstr = j;
- }
- }
- 4. 编写一个方法 求一个字符串的字节长度 str = 'hello,世界'
- 题解:英文字母、数字占一个字节,汉字,字符占两个字节,单字节在unicode编码中占0-255位
- var len = 0;
- for(var i = 0, i < str.length; i++){
- if(str.charCodeAt(i) > 255){
- len += 2;
- }else{
- len ++
- }
- }
- len 即为字符串的字节长度
- 5. 去除数组中重复的元素 arr = ['a','b','c','a','d','c'];
- 题解:定义一个空数组,遍历arr,将arr中的元素插入新数组中,判断如果新数组中存在就跳过不插入
- var newa = [];
- function check(arr, str){
- for(var i = 0; i < arr.length; i++){
- if(str == arr[i])
- return true;
- }
- return false
- }
- for( var i = 0; i < arr.length; i++ ){
- if(!check(newa, arr[i])){
- newa.push(arr[i])
- }
- }
- newa即为无重复数组
前端面试题之js篇的更多相关文章
- 好程序员分享Web前端面试题汇总JS篇之跨域问题
为什么80%的码农都做不了架构师?>>> 好程序员分享Web前端面试题汇总JS篇之跨域问题,接着上一篇文章我们继续来探讨web前端面试必备面试题. 跨域解决方案 1. 通过jso ...
- 前端面试题(JS篇)
原题地址:http://handyxuefeng.blog.163.com/blog/static/454521722013111714040259/ 好吧,最近打算换工作,所以关注比较多的是面试题, ...
- 前端面试题(html篇)
前端面试题(html篇)
- 各大互联网公司前端面试题(js)
对于巩固复习js更是大有裨益. 初级Javascript: 1.JavaScript是一门什么样的语言,它有哪些特点? 没有标准答案. 2.JavaScript的数据类型都有什么? 基本数据类型 ...
- 前端面试题整理—Webpack篇
1.什么是webpack,与grunt和gulp有啥不同 webpack是一个模块打包工具,在webpack里面一切皆模块 通过loader转换文件,通过plugin注入钩子,最后输出有多个模块组合成 ...
- 前端面试题整理—React篇
1.说一下React React是Facebook 开发的前端JavaScript库 V层:react并不是完整的MVC框架,而是MVC中的C层 虚拟DOM:react引入虚拟DOM,每当数据变化通过 ...
- 2019前端面试题之js
1.js的数据类型 js的数据类型分为基本类型跟引用类型 基本数据类型(5个):undefined,boolean,number,string,null.基本类型的访问是按值访问的,就是说你可以操作保 ...
- 前端面试题整理—Vue篇
1.对vue的理解,有什么特点,vue为什么不能兼容IE8及以下浏览器 vue是一套用于构建用户界面的渐进式框架,核心是一个响应的数据绑定系统 vue是一款MVVM框架,基于双向绑定数据,当数据发生 ...
- 前端面试题整理—JavaScript篇(一)
1.JS的基本数据类型和引用数据类型有哪些,两者区别 基本数据类型->string.number.Boolean.null.undefined.symbol 引用数据类型->array.o ...
随机推荐
- 编译内核时出错:/bin/sh: 1: lzop: not found
http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/71477.aspx 在上面链接中,发现时缺少了 lzop 工 ...
- commons-pool2-中的一些配置
/** * 连接失效检测相关 */ // 空闲时进行连接测试,会启动异步evi ...
- jboss-AS目录结构了解(资料摘取)
Directory Description bin Contains startup, shutdown and other system-specific scripts. Basically al ...
- cf B. Vasya and Public Transport
http://codeforces.com/contest/355/problem/B #include <cstdio> #include <cstring> #includ ...
- bat命令大全
一.简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置. 语法 echo [{on│off}] [message ...
- 单元测试之C/C++
如今TDD很火,我公司小,一般写代码不写测试用例的,一般就是随便测试下函数的输入输出,没用工具或框架来测试,非常简单,一点也不正规化. 在一种传统的结构化编程语言中,比如C,要进行测试的单元一般是函数 ...
- 关于volatile
也许读者会注意到,端口寄存器的变量使用了volatile 修饰符,这是因为C语言在编译的时候会进行某种优化来提高效率,比如下面这段代码int i = 1;int a = i;int b = i;对于编 ...
- HTML5的local storage存储的数据到底存到哪去了
原文地址:http://zhidao.baidu.com/link?url=m6p5MLv0R46lDCd_Vnrry4XOMbdCwgV5fzs3tj5Jeyht1nPkAZ9OrO23njYBY1 ...
- Struts2小结
Struts 2是在WebWork2基础发展而来的. 注意:struts 2和struts 1在代码风格上几乎不一样. Struts 2 相比Struts 1的优点: 1.在软件设计上Struts 2 ...
- ubuntu14.04 cocos2d-x-3.6 glfw编译出错解决方案
lib/libcocos2d.a(CCGLViewImpl-desktop.cpp.o): In function `cocos2d::GLViewImpl::GLViewImpl()': /home ...