zoukankan      html  css  js  c++  java
  • 前端面试准备之JavaScript

    1.数据类型、

    JavaScript中有5种简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number和String。还有1种复杂数据类型——Object,Object本质上是由一组无序的名值对组成的。

     

    2.面向对象、

    JavaScript 是一门彻底的面向对象的语言。

    为了说明 JavaScript 是一门彻底的面向对象的语言,首先有必要从面向对象的概念着手 , 探讨一下面向对象中的几个概念:

    1)一切事物皆对象

    2)对象具有封装和继承特性

    3)对象与对象之间使用消息通信,各自存在信息隐藏           

     

    JavaScript 语言是通过一种叫做 原型(prototype)的方式来实现面向对象编程的。实现面向对象编程有两种方式分别是: 基于类的(class-based)面向对象和 基于原型的 (prototype-based) 面向对象.

     

    3.继承

    JavaScript 语言是通过一种叫做 原型(prototype)的方式来实现继承。

     

    4.闭包

    闭包是指有权限访问另一个函数作用域的变量的函数,创建闭包的常见方式就是在一个函数内部创建另一个函数

     

    5.插件

    插件的目的是为了实现一系列功能。一般来讲是分为两种,一种是独立插件,一种是依赖插件。独立插件的话,只要把插件写在一个js文件里面,把js引进来就可以了。依赖插件的话,是本身需要依赖于其他的js,比如常见的jq插件,需要依赖jq,使用的时候要先把jq引进来,然后再把这个js引进来。

    js插件的开发需要几个注意点:

    1)独立变量,方法。防止和其他js产生冲突,一般采用闭包。

    2)暴露设置,暴露方法调用。为了插件根据需要做一些设置上的改变。

    3) 防止重复定义,一般有一个初始化,建议采用匿名函数实现只能初始化一次。

     

    6.作用域

    作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期。在JavaScript中,变量的作用域有全局作用域和局部作用域两种。

     

    7.跨域

    简单地理解就是因为JavaScript同源策略的限制,a.com 域名下的js无法操作b.com或是c.a.com域名下的对象。

     

    8.原型链

    9.模块化

     

    10.自定义事件

     11.内存泄漏

     

    12.事件机制

     13.异步装载回调

     

    14.模板引擎

     15.Nodejs

    Node.js是一套用来编写高性能网络服务器的JavaScript工具包。

     

    16.JSON

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,我们称之为JavaScript对象表示法。使用JSON进行数据传输的优势之一是JSON实际上就是JavaScript。它基于ECMAScript第3版中JavaScript对象字面量语法子集的一种文本格式。这表示可以使用responseText从服务器中检索JSON数据,然后再使用JavaScript的eval()方法将JSON字符串转换成JavaScript对象,那么,使用附加JavaScript就可以很快地从该对象中提取数据,而不需要处理DOM。

     

    17.ajax

    ajax 即“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML),也就是无刷新数据读取。

     

    18.http 请求:

    首先需要了解 http 请求的方法(GET 和 POST)。

    GET 用于获取数据。GET 是在 URL 中传递数据,它的安全性低,容量低。

    POST 用于上传数据。POST 安全性一般,容量几乎无限。

  • 相关阅读:
    Revit 二次开发 交互及UIAPI之TaskDialog
    Revit 二次开发 交互及UIAPI之Selection
    Revit 二次开发 元素创建与修改练习
    编译带libev和libuv的libwebsocket (Win平台)
    sqlite3存储格式
    MAC OS下编译apple跨平台的libevent库 (可延申到其它第三库)
    Unix, Linux以及NT内核和它们各自衍生的系统关系图
    简单地迁移你的android jni代码逻辑到iOS
    使用ndk交叉编译android各平台版本的第三方库
    使用Android Studio进行ndk开发的准备
  • 原文地址:https://www.cnblogs.com/xiaohuihui123/p/4801981.html
Copyright © 2011-2022 走看看