思考与总结

1.模块化

曾看到某大牛说:模块化和组件化是前端开发的一大趋势。所谓的模块化一般是指为了实现一个特定的功能而将所有的代码(对象)封装成一个模块。而AMD就是requireJS为指定模块规范化的一个产出,它具有异步加载、依赖前置、提前执行的特点。CMD则是针对淘宝技术团队开发sea.js提出的一个规范,它具有同步加载、依赖就近、延迟执行的特点。commonJS在后端Node.js就比较常见,以require(module路径)常见、

2.数据推送

websocket结合socket.io开发在实时通讯方面是非常强大,可以详见前面的博客内容。即基于Node.js的聊天室

3.高级函数

  • 惰性函数主要用于第一次调用函数后第二次调用才生效,可以类比XMLHttpRequest,先判断浏览器对其的兼容性,再赋值,此后调用父函数即访问新的值,特点是:一次更改,此后生效。
  • 函数柯里化:主要是合并参数
  • 级联函数:类比jQuery的链式调用。

4.高级技巧

  • 变量作用域以及闭包,这部分主要是理解变量的声明提升,js预处理环境和执行环境。
  • this:可以使用apply和call方法改变this的指向,apply和call的唯一区别是传参的形式不同。
  • 传递类型分为按值传递和按引用传递。侧重理解按引用传递,包括数组和对象。

5.面向切面编程

Aspect Oriented Programming(AOP),即面向切面编程,主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间的低耦合性的隔离效果。

6.JS多线程

记得浏览器有个GUI线程

JS常用的技术的更多相关文章

  1. Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性  应该内置到语言里面

    Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性  应该内置到语言里面 1. 常用算法1 1.1. 目录2 1.2. 定义和用法编辑2 1.3 ...

  2. Vue专题-js常用指令

    vue.js官方给自己的定为是数据模板引擎,并给出了一套渲染数据的指令.本文详细介绍了vue.js的常用指令. vue.js常用指令 Vue.js使用方式及文本插值 Vue.js 使用了基于 HTML ...

  3. js常用工具类.

    一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...

  4. atitit 商业项目常用模块技术知识点 v3 qc29

    atitit 商业项目常用模块技术知识点 v3 qc29 条码二维码barcodebarcode 条码二维码qrcodeqrcode 条码二维码dm码生成与识别 条码二维码pdf147码 条码二维码z ...

  5. Atitit.现在的常用gui技术与gui技术趋势评价总结

    Atitit.现在的常用gui技术与gui技术趋势评价总结 1. Gui俩种分类:  native 和 dsl 和 script1 2. 最好的跨平台gui技术h51 2.1. 几大技术体系(java ...

  6. ios开发——实用技术总结Swift篇&swift常用开发技术总结

    swift常用开发技术总结 懒加载:属性,数组(字典),控件... 数组(懒加载): lazy var shops:Array<Dictionary<String, String>& ...

  7. js操纵cookie技术

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  8. Js常用技巧

    摘录:http://crasywind.blog.163.com/blog/static/7820316920091011643149/ js 常用技巧 1. on contextmenu=" ...

  9. JS常用的标准函数

    原文:JS常用的标准函数 1.Array类型函数 array.concat(item...) 函数功能:关联数组,实现数组相加功能,但并不影响原先数组,concat返回新数组. array.join( ...

随机推荐

  1. 为Xen虚拟机扩容根文件系统(LVM)

    ===== 为Xen虚拟机扩容根文件系统(LVM) ===== 1. 增加1个4G的映像文件 # dd if=/dev/zero of=data.img bs=4k seek=1024k count= ...

  2. java中约瑟夫环代码实现

    问题原型: 传说在很久很久以前,有一架搭载着n个人的飞机出现了故障,迫降在了一个荒岛上.飞机彻底报废后,这些人用飞机的残骸建成了一艘只能容纳一个人乘坐的小船,那么怎么去确定这n个人中哪个人有资格上船呢 ...

  3. Google 马来西亚主页被黑

    互联网并没有想象中安全,Google 马来西亚主页被黑 | TheVerge 消… 查阅全文 ›

  4. 使用Bootstrap模态框实现增删改查功能

    模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 本文实现的是使用模态框实现简单的增删改查的功能. ...

  5. jquery中innerheight outerHeight()与height()的区别

    1. .height() 获取匹配元素集合中的第一个元素的当前计算高度值 或 设置每一个匹配元素的高度值(带一个参数). 注意:1).css('height')和.height()之间的区别是后者返回 ...

  6. Dapper的正确使用姿势

    本文demo适用于MySQL Dapper优势和缺点 优点 高性能.易排查.易运维.灵活可控 缺点 和EF相比,手写sql当修改表结构不易发现bug. 习惯了EF后再来使用Dapper,会很难适应那种 ...

  7. HDU2846【字典树】

    题意: 百度. 思路: 一个串的插入只能搞出这个串的前缀,然而对于要query的串是子串,所以插入的时候暴力插入所有字母开头的串.... 然后还要注意到自己的串本身会叠加字典树中的前缀,要标记掉. # ...

  8. LightOJ 1022 【读题】

    求阴影面积: 犯了两个错误,漏看了两个条件. 第一个wa:题面中PI说要取pi = 2 * acos (0.0) 第二个wa: For example, add 10-9 to your result ...

  9. studio 配置 opencv3.1

    环境 win10 android studio2.0 OpenCV-3.1.0-android-sdk android-ndk-r10e-windows-x86_64 jdk-8u102-window ...

  10. [Xcode 实际操作]二、视图与手势-(1)UIView视图的基本使用

    目录:[Swift]Xcode实际操作 本文将演示在视图控制器的根视图里添加两个视图对象. import UIKit class ViewController: UIViewController { ...