[译]Javascript风格要素(一)(4)
作者:秦歌 来源:随网之舞 发布时间:2008-02-28 12:58:00
标签:JavaScript,优化,风格,编程
使用通用库
此时对于处理cookies我们有几种方法。我们发现下一个事情是令人惊奇的,它是没有利用我们定义的方法的cookies处理方式代码。
var b,
l = '',
n = '0',
y;
y = ' ' + document.cookie + ';';
if ((b = y.indexOf(' Y=v')) >= 0) {
y = y.substring(b, y.indexOf(';', b)) + '&';
if ((b = y.indexOf('l=')) >= 0) {
l = y.substring(b + 2, y.indexOf('&', b));
if ((b = y.indexOf('n=')) >= 0)
n = y.substring(b + 2, y.indexOf('&', b));
}
}
它甚至复制了我们早前看到的同样技术。很有可能两块代码都改写自同一个有缺点的原稿。我们可以利用我们最近的工作来改进它:
var l = '',
n = '0',
y = _yc.get('Y') + '&',
b = y.indexOf('l=');
if (b >= 0) {
l = y.substring(b + 2, y.indexOf('&', b));
b = y.indexOf('n=');
if (b >= 0) {
n = y.substring(b + 2, y.indexOf('&', b));
}
}
代码重用是软件工程的圣杯。我们可以想象通过最先进的技术避免大量的必需的手工工作来得到高效率。这里我们发现一种失败,使用一种方法需要在相邻需要它的地方进行定义。
软件的体系结构倾向于反映生产他们的组织结构。在这种情况下,我们看到一个组织由于缺乏流程的连通意识而导致的明显低效的证据。风格的应用是吹毛求疵的,因为如果我们理解这几条是什么才有可能正确的一起使用这几条。
原文:Douglas Crockford的The Elements of JavaScript Style Part One
阅读下一篇:[译]Javascript风格要素(二)


猜你喜欢
- 首先我们载入一张灰度图片,一般灰度图片像素为0-255.可以发现该图片的最大像素为254,最小像素为2。一般处理图片时会转化为double类
- 1.前言有时候,我们需要把A库A1表某一部分或全部数据导出到B库B1表中,如果系统运维工程师没打通两个库链接,我们执行T-SQL是处理数据导
- 本文实例讲述了php通过获取头信息判断图片类型的方法。分享给大家供大家参考。具体实现方法如下:$filename = '617.gi
- 当我们重装系统,或者是重装数据库之后,当附加数据库之后,发现数据库里面 有用户名,但是在sqlserver里面没有 登陆名例如 先看&nb
- 好了,下面我们看看如何在服务器上生成.m3u文件并下传到客户端的:<%dim choose,path,mydb,myset,
- 简单概述js变量可以划分为两种不同的数据类型:基本类型:undefined、null、Boolean、Number、String、Symbo
- 通常的聊天室所采用的程序,也就是Chat程序了,其基本结构原理是不会采用到数据库的。那究竟采用什么技术呢?我们知道ASP变量当中Sessio
- 经常写文章的小伙伴可能会头疼,图片需要一张一张的上传,费劲也耗时,今天就推荐几款超简单的图床工具。图床就是一个在网络上存储图片的地方,目的是
- 理解切片基本用法:首先需要明白,可迭代对象,按照正数索引(正序)是从0开始的,按照负数索引(逆序)是从-1开始的。>>>
- 什么是Selenium先带领大家学习下Selenium的基本概念吧。Selenium主要用于web应用程序的自动化测试,但并不局限于此,它还
- Lightbox里面的一个函数,能把页面实际的高宽与浏览器可视面积的高宽保存在一个数组中..非常好用.什么是Lightbox?下载light
- 本项目利用python以及opencv实现信用卡的数字识别前期准备导入工具包定义功能函数模板图像处理读取模板图像 cv2.imread(im
- 本文实例为大家分享了JS实现京东快递单号查询的具体代码,供大家参考,具体内容如下<!DOCTYPE html><html
- 0 背景由于工作需要,利用spark完成机器学习。因此需要对spark集群进行操作。所以利用pycharm和pyspark远程连接spark
- 最近在使用Python开发系统,需连接mysql数据库,我用的是Python3连接MySQL8.0,其中老是报错以下问题:网上给了各种各样的
- 1、安装依赖包yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoco
- Wordpress 2.6.2 出来了,今天将网站程序从2.6升级上来,比较了一下2个版本的代码,发现2.6的版本中的代码还有几个地方出现了
- 1 准备工作1.1 环境搭建1.1.1 安装python3.6python安装官网1.1.2 安装django2.2pip install
- 不同数据库之间若不能导入导出,那么将是一件可怕的事情,所幸的是一般情况下通过不同的方法和途径,都可以实现,方法有多种,本人提供其中的一个,提
- Event事件用来控制线程的执行出现e.wait(),就会把这个线程设置为False,就不能执行这个任务;只要有一个线程出现e.set(),