zoukankan      html  css  js  c++  java
  • 前端面试题之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即为无重复数组
    

      

  • 相关阅读:
    C语言博客I作业04
    C语言I博客作业03
    C语言I博客作业02
    C语言ll作业01
    C语言寒假大作战04
    C语言寒假大作战03
    C语言寒假大作战02
    C语言寒假大作战01
    C语言I作业12—学期总结
    C语言I博客作业11
  • 原文地址:https://www.cnblogs.com/huntaheart/p/4465852.html
Copyright © 2011-2022 走看看