以图明志

JavaScript

[专题] [JavaScript秘密花园]对象其一:使用和属性

大部分变量都是对象
JavaScript 中所有变量都是对象,除了两个例外 null 和 undefined。一个常见的误解是数字的字面值(literal)不是对象。这是因为 JavaScript 解析器的一个错误, 它试图将点操作符解析为浮点数字面值的一部分。JavaScript 的对象可以作为哈希表使用,主要用来保存命名的键与值的对应关系。

JavaScript

JavaScript对象学习笔记

在JS中,一切东东其实都是对象
对象是组成JavaScript的基本单元,在JS中,一切东东其实都是对象,而且功能非常强大,它不仅风格独特,功能也与众不同。引用的概念是JS的基础之一,它是指向对象实际位置的指针。JS的每个函数都有一个变量argument,它是接收所有参数的伪数组。为什么是“伪”,因为你不能修改它,但它有length属性。

JavaScript

JavaScript渐变效果的实现

同一个页面多个渐变效果
上面的元素,鼠标移上去透明度渐渐增加,鼠标移出,透明度渐渐减小。根据目标值和当时值的对比,来决定是正向还是负向速度。然后给每一个元素加上各自的透明度值,各自的透明度变化分开。最后实现同一个页面多个渐变效果。

JavaScript

用原生JavaScript做一个拖拽效果

一个JavaScript自由拖拽类介绍
这个效果没有使用JQuery,纯原生JavaScript实现,可以参考下。拖动效果平滑,自然,CPU性能没有明显起伏。具体的拖拽了可以查看本页源代码获得,这里就不贴出来了。target 拖拽元素 HTMLElemnt 必选,指定鼠标按下哪个元素时开始拖拽,实现模态对话框时用到。

JavaScript

JavaScript几种数组去掉重复值的方法

列举5种解决这个问题的思路
数组去重复是一个常见的需求,我们暂时考虑同类型的数组去重复。主要是理清思路和考虑下性能。以下方法,网上基本都有,这里只是简单地总结一下。遍历数组,一一比较,比较到相同的就删除后面的。遍历数组,一一比较,比较到相同的,跳过前面重复的,不相同的放入新数组。遍历数组,取一个元素,作为对象的属性,判断属性是否存在。

JavaScript

理解JavaScript的function

JavaScript中万恶的function
JavaScript中最有特色而又让你困惑的function算一个了,但OO语言的静态方法都是由类去调用,不能实例化本身的,javascript中由于其特殊性恰好相反。注意这里alertPerson的name属性,如果函数体内没有查找到name则会到原型中去找,如果查找到则会屏蔽原型中的name直接返回其值。

JavaScript

深入研究JavaScript的事件机制

详尽的方式让你了解JavaScript的事件
本篇开始将回顾下Javascript的事件机制。同时会从一个最小的函数开始写到最后一个具有完整功能的,强大的事件模块。为叙述方便将响应函数/回调函数/事件Listener/事件handler都称为事件handler。先看看页面中添加事件的几种方式。HTML Element元素自身就拥有了很多onXXX属性,只需将JS代码赋值给其就可以了。

JavaScript

用JavaScript实现一个简单的树结构

数据源用数组混json结构,实现了基本的功能
数据源用数组混json结构,实现了基本的功能。效率一般,跟 dhtree 梅花雪树对比了下,都差不多。这个实现树的原理是根据json,不断的生成ul li, 下面是一个简单的例子(只有涉及到生成树,也就是说只是展示,tree类代码只有64行) 没有用innerHTML生成,全是是创建节点来创建ul li,所以创建节点碎片添加。

JavaScript

整理一些JavaScript时间处理扩展函数

之前用到的js处理时间的函数
在JavaScript中,时间处理是经常需要用到的。最近想要慢慢建立自己的代码库,整理了几个之前用到的js处理时间的函数,发出来跟大家分享一下,以后的使用中会不断增加和修改代码库。有时需要把字符串转换为日期对象,用来把形如yyyy-mm-dd或者dd/mm/yyyy的字符串转换为日期对象。

JavaScript

JavaScript各变量类型的判断方法

形如“是否为……?” 的判断的boolean函数
我们很容易被漂亮的代码吸引,也不知不觉的在自己的代码库中加入这些。却没有冷静的想过它们的优劣。这不,我就收集了一系列形如 "是否为……?" 的判断的boolean函数。以上isXX系列中,isUndefined在类库中用的最多。如判断是否传入了某个参数,判断对象是否拥有某个属性等等。但这个函数是不必存在,我已将其移除。

JavaScript

做一个类似JQuery获取DOM对象的$()

dom操作的一个简易函数
在dom操作时,有时根据id获取单个对象、有时根据className获取多个对象。平常可能我们用两个函数来实现这两个功能。不过我将它们整合了一下,目前使用情况良好,函数如下。另外,$与$结合使用的话,就会更加的方便了。

JavaScript

用iFrame模拟Ajax上传文件

$.post直接上传图片是不可行的
前段时间在解决ajax上传文件时折腾了好一阵。直接用$.post上传文本信息肯定是没有问题的。但是$.post直接上传图片是不可行的。后来看到网上的一些解决方案,有现成的ajax上传文件的封装的方法也有利用flash的。flash确实是个好方法 但是不是每个人都会flash的而且下载下来现成的方法要做修改也不是件易事。

JavaScript

JavaScript的团队编程规范

仅作参考
本规范是针对javascript函数式编程风格与公司严重依赖于jQuery进行编码的现实制定出来。禁止使用eval,with与caller(ecma262 v5 的use strict要求)。eval只允许在加密时机器生成。声明变量必须加上 var 关键字,除了在for(;;)循环等语句中,原则上不允许使用连续声明。因为连 续声明的效率不如分开声明高,而且很容易手误致其暴露到全局作用域下。

JavaScript

收藏一个JavaScript字符串连接方法

写成了类的方式,方便调用
最近在看一同事写的代码时,有一个字符串用了一堆"+"号,看了半天没明天到底会输出什么样的内容,就想到用字符串连接的类,把以前的方法写成了类的方式,方便调用。下面的类支持实例调用和静态调用,参数可以是单独的字符串,或者json的格式,或者类似参数数组的方式,见下面示例。

JavaScript

如何写出高质量的JavaScript代码

学习下如何写出高质量的js编码
优秀的Stoyan Stefanov在他的新书中(《Javascript Patterns》)介绍了很多编写高质量代码的技巧,比如避免使用全局变量,使用单一的var关键字,循环式预存长度等等。这篇文章不仅仅从代码本身来考虑如何优化编码,也从代码的设计阶段来考虑,包括书写API文档,同事的review,使用JSLint。

JavaScript

让JS帮你决定午餐吃什么吧

js轮播选择:午餐吃啥?
最愁就是每天中午吃什么了,有空就做了个 JavaScript 轮播随机选择。会轮播预先自定义的菜单中,然后点选定的时候确定一款。代码可以查看本页源代码获得,你可以自定义修改菜单数组。
2 / 17 首页 < Prev 1 2 3 4 5 Next > 尾页 页码: