面试题

作者: 糯米小馒头 | 来源:发表于2018-03-06 14:45 被阅读0次

二维数组旋转90°

自己写的,感觉很low,如果想到更好的方法,再更新

var Array1=[
                [1,2,3,4],
                [5,6,7,8],
                [1,2,3,4]   
            ];
        var cur=0;
        var timer=setInterval(function(){
            for (var i=0;i<Array1.length;i++) {         
                
                if(cur==Array1[i].length-1){
                    clearInterval(timer);
                }
                document.write(Array1[i][cur]+",")
            }
            cur++;
            document.write("<br />")
            
        },100);

查找某一个字符出现的次数

方法一

function patch(re,s){
          re=eval("/"+re+"/ig")
          return s.match(re).length;
        }
        
        var s = 'maomaomoaotttt';
        alert(patch('m',s));

数组去重

    var ary=[1,2,3,3,3,4,45,5,6,7,8,9,0,8,7,6,5,43,2,1];
        
        for (var i=0;i<ary.length;i++) {
            for (var j=i+1;j<ary.length-1;j++) {
                if(ary[i]==ary[j]){
                     ary.splice(j,1);
                     j--;
                }
            }
        }
        console.log(ary);

深度拷贝数组

es6新写法

var arr = [1,2,3,4,5];
var [ ...arr2 ] = arr;
arr[2] = arr.length;
console.log(arr2);

ajax请求方式:

get、post、jsonp、delete、put、head。

js的库和类有什么区别

后续补上

js实现异步的操作有哪些

简单说几个:
  1.利用setTimout实现异步
  2.使用Promise对象
  3.动态创建script标签
  4.利用script标签提供的async
  5.还有ES6里面async函数,使得异步操作变得更加方便

js 的数据类型

ES5:的基本数据类型,Undefined,Null,Number,String,Boolean。引用类型,Object

ES6:新增了数据类型Symbol,表示独一无二的值。

项目做过哪些性能优化

减少 HTTP 请求数

减少 DNS 查询

使用 CDN

避免重定向

图片懒加载

减少 DOM 元素数量

减少 DOM 操作

使用外部 JavaScript 和 CSS

压缩 JavaScript 、 CSS 、字体、图片等

优化 CSS Sprite

使用 iconfont

字体裁剪

多域名分发划分内容到不同域名

尽量减少 iframe 使用

避免图片 src 为空

把样式表放在 中

把脚本放在页面底部

欢迎补充。。。

页面导入样式时,使用link和@import有什么区别

区别1:`link`是XHTML标签,除了加载CSS外,`@import`属于CSS范畴,只能加载CSS。

css还可以定义RSS等其他事务;

区别2:`link`引用CSS时,在页面载入时同时加载;`@import`需要页面网页完全载入以后加载。
区别3:`link`是XHTML标签,无兼容问题;`@import`是在CSS2.1提出的,低版本的浏览器不支持。
区别4:`link`支持使用Javascript控制DOM去改变样式;而`@import`不支持。
for (var i=1;i<=3;i++) {
                setTimeout(function(){
                    console.log(i) //输出4
                },0)
            }

let const与var的区别

var:1、可以重复声明。2、不支持块级作用域。
let:2、在同一个作用域下不可以重复声明 。2、支持块级作用域let定义的变量不能被提前声明

箭头函数

http和https的区别

post和get的区别

https://sunshinevvv.coding.me/blog/2017/02/09/HttpGETv.s.POST/

相关文章

  • 面试材料

    面试经验 面试题1 面试题2 面试题3 面试题4 面试题5 面试题6――数据结构 面试题7――网络 面试题8――汇...

  • 高阶面试题

    webpack面试题 面试题:webpack插件 Git面试题 面试题:git常用命令 面试题:解决冲突 面试题:...

  • this的指向的面试题

    面试题1 面试题2 面试题3 面试题4

  • 面试所涉及的问题

    面试题参考1 : 面试题 面试题参考2 : 内存管理 面试题参考3 :面试题 ...

  • Android超实用最全面试大纲(三)

    文章目录: ANR面试题 OOM面试题 Bitmap面试题 UI卡顿面试题 内存泄漏面试题 内存管理面试题 一、A...

  • Android最全面试大纲(三)

    文章目录: ANR面试题 OOM面试题 Bitmap面试题 UI卡顿面试题 内存泄漏面试题 内存管理面试题 一、A...

  • 2022年web前端面试题

    web前端面试题分为:html/css面试题、javascript面试题、vue面试题、性能优化面试题、网络方面面...

  • ios面试题

    初级面试题 中级面试题 高级面试题 swift篇

  • Android超实用最全面试大纲(四)

    文章目录: 冷启动和热启动面试题 其他优化面试题 架构模式面试题 插件化面试题 热更新面试题 进程保活面试题 Li...

  • Android最全面试大纲(四)

    文章目录: 冷启动和热启动面试题 其他优化面试题 架构模式面试题 插件化面试题 热更新面试题 进程保活面试题 Li...

网友评论

      本文标题:面试题

      本文链接:https://www.haomeiwen.com/subject/bgjlfftx.html