转载自:http://www.cnblogs.com/baochuan/archive/2012/04/30/2473771.html

 介绍
 
老是在写js,你平时是怎么写你的js呢?更喜欢哪种方式呢?
 
今天就把常见的跟大家唠叨唠叨。——年纪大了,就这一爱好(平时也喜欢说胡话),别闲我烦!

 
 直接初始化法
 

优点:

1、userData本身就是对象实例。——上来就实例化一个类出来,也不怕浏览器受不了。

2、代码紧凑。

3、编程效率高。

缺点:

1、代码的重用性比较差。

2、不符合面向对象的编程思路。——设计模式这种玩意,经常是在类上,弄来弄去。这种直接在对象上使用,够呛!

总结:应避免使用该方法创建自定义对象。

使用案例: QQ迷你弹窗

 构造函数法
 

使用方法:需要使用“new 和 构造函数”创建实例。

优点:

只有new的时候,才分配内存。如果不new,浏览器一辈子都不会给你内存资源的。——想要就要,不想要就不理她!

 Object表达式法
 
类似于第一种”直接初始化法“。——其实是一种变种。

上面那一坨红色标出来的部分,让人看着眼晕。——这代码让谁看了,估计都要狂吐血!

 匿名函数法
 

这个是我经常用的,你看这代码,用两字形容,“漂亮”,再给两字,“相当漂亮”

上面那个是我经常用的,我在项目中写了一堆的扩展,用这玩意,层次感非常强。

案例:jQuery

 总结
 
我在平时写js代码时候,喜欢自己写,不太喜欢使用现在网上的框架。——一是比较熟悉自己的代码(别人问我,我都知道里面都是什么东东),二是自己的框架更适合现有的项目。
 
但是平时我也比较关注这些框架,一般是看看这些框架是怎么写的,然后在写自己项目的时候,会放进去一些。
 
大家在平时写js代码的时候更喜欢以上哪种方式,或者你们是不是有更好的方式呢?不妨告知一二。
 
 推荐
 
如果这文章对你有所帮助,请推荐一把,给哥们写作的动力。

【转载】javascript 杂谈之哪种写法你更喜欢?的更多相关文章

  1. javascript函数的几种写法集合

    1.常规写法 function fnName(){ console.log("常规写法"); } 2.匿名函数,函数保存到变量里 var myfn = function(){ co ...

  2. Javascript函数的几种写法

    最近在看某个插件的源码时,总是看到各种不同风格的js函数的写法.(怪我只是初级水平,看的一头雾水) 于是想找点资料,总结总结,心里不清不楚的总是很别扭! 1.常规写法 // 函数写法 function ...

  3. [转载]javascript创建对象的几种方式

    原文链接:http://qingfeng825.iteye.com/blog/1935648 1. 工厂方法:能创建并返回特定类型对象的工厂函数(factory function). function ...

  4. 常见浏览器的宽高代码写法!有原生JavaScript和jquery两种写法-------------------------------以及我的个人网站

    我的个人网站 点击链接!欢迎大家访问 下面是网页一些常见的宽高的获取.........这是原生的写法(JavaScript) 网页可见区域宽: document.body.clientWidth 网页 ...

  5. 委托的N种写法,你喜欢哪种?

    一.委托调用方式 1. 最原始版本: delegate string PlusStringHandle(string x, string y); class Program { static void ...

  6. (转)委托的N种写法,你喜欢哪种?

    原文:http://www.cnblogs.com/FreeDong/archive/2013/07/31/3227638.html 一.委托调用方式 1. 最原始版本: delegate strin ...

  7. 【转】委托的N种写法,你喜欢哪种?

    一.委托调用方式 1. 最原始版本: delegate string PlusStringHandle(string x, string y); class Program { static void ...

  8. 全面理解Javascript闭包和闭包的几种写法及用途

    好久没有写博客了,过了一个十一长假都变懒了,今天总算是恢复状态了.好了,进入正题,今天来说一说javascript里面的闭包吧!本篇博客主要讲一些实用的东西,主要将闭包的写法.用法和用途.  一.什么 ...

  9. 转载 Javascript继承两种形式详解

    一直想对Javascript再次做一些总结,正好最近自己写了一个小型Js UI库,总结了一下Js的继承机制,在网上也看了一些前辈们博客里的总结,感觉分析不是特别全面.这里仅仅是把自己的学习体会拿出来分 ...

随机推荐

  1. 上锁 - leetcode

    158. Read N Characters Given Read4 II - Call multiple times 题目: The API: int read4(char *buf) reads ...

  2. c# 读取ACCESS 数据库

    using System; using System.Collections.Generic; using System.Data.OleDb; using System.IO; using Syst ...

  3. JS 高效快速的数组去重

    Array.prototype.uniquer = function() { var result = [], hash = {}; ; i < this.length; i++) { if ( ...

  4. iOS APP中Versions和build版本区别

    version是app发布时用户看到的版本号. build的为了方便开发者多次提交binary, 比如被苹果reject后. 例如,第一次提交version和build都是1.0. 假如审核没过,那么 ...

  5. 前端必知的ajax

    简介 异步交互 此篇只介绍部分方法,想了解更多就猛戳这里 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. url (Stri ...

  6. (一)初步了解python

    python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. Py ...

  7. jsp日期插件My97DatePicker 强大的日期控件 使用方便简单

    本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...

  8. bone collector hdu 01背包问题

    Problem Description Many years ago , in Teddy’s hometown there was a man who was called “Bone Collec ...

  9. java JDBC测试

    下载mysql-connector-java-5.1.31.jar添加到工程buildpath中 package com.jdbc.test; import java.sql.DriverManage ...

  10. React添加自定义属性

    使用‘data-’前缀即可,代码举例 render(){ return ( <ul className={css.forUl}> { this.props.todo.map(functio ...