zoukankan      html  css  js  c++  java
  • 游戏客户端面试(Egret)

    推荐阅读:

    一。朋友面的一家公司

    1.说下let,var,const。
          var定义的变量,没有块的概念,可以跨块访问, 不能跨函数访问。
          let定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问。
          const用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改。
    2.如何保证this的指向是正确的。

    分析:先从原理上说明this指向问题为什么会出现,什么情况下会出现,然后再说做法呗
    

          为了防止作用域变化,闭包问题。把this保存 传递过去,或者用bind传进去。

    3.如何写出高质量的代码。
    让函数成为编码的基本单位,每个函数只做 1 件事情;
    省略不必要的代码;
    使用主动式;
    避免连串的松散表达式;
    把相关的代码放在一起;
    多用肯定语句;
    善用平行结构;
    详细解释
    4.怎么查内存泄漏,怎么防止内存泄漏?
          分析:performance可以持续追踪,是最宏观的分析;然后用memory,可以细化定位,用source可以断点排查
    5.说一下什么是websocket。什么是三次握手?为什么需要三次握手。
          WebSocket是一种网络通信协议,服务端有新消息可以自动推送。
    HTTP协议:通信只能由客户端发起。
          第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。
          第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
          第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
          完成三次握手,客户端与服务器就可以开始传送数据了
    6.做一个成长系统的前端需要几天的工作量?

    7.说下用合图有什么好处。
          合图是减少Http请求数。合图的时候提个建议:png不要与jpg混合在一起合,否则,合图后图片的大小将可能比不合图时所有图资源大小大,另外,合图宽与高不能超过2048px,否则,极有可能出现渲染上的问题~~
    8.如何实现一个循环链表。

    9.在这里插入图片描述

  • 相关阅读:
    第二十课字符串
    数学归纳法:搞定循环与递归的钥匙
    11预处理命令下
    Xshell6无法连接上虚拟机的解决方法
    redis数据库常用命令
    redis使用get命令,中文乱码问题
    Ubuntu下redis的安装和简单操作
    启动hbase后,使用指令进入shell命令行模式时报错"wrong number of arguments (0 for 1)"
    启动hbase报错:“SLF4J: Class path contains multiple SLF4J bindings.”解决方法
    ./bin/hadoop 提示“没有那个文件或目录”解决方法
  • 原文地址:https://www.cnblogs.com/shirln/p/10605408.html
Copyright © 2011-2022 走看看