`
rainsilence
  • 浏览: 160556 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

两个比较有用的Javascript工具函数(原)

阅读更多
1.大家在实际工作中,会写各式各样的赋值语句。
比如最常用的obj.style.display = "none";
如果这样的赋值语句一多,obj.style一排下来都要看晕了

下面我的base.js中的extend函数可以允许用json格式赋值属性甚至是函数句柄
/**
  * 扩展函数
  * @param target 需要扩展的对象
  * @param params 要往target里放的属性和方法
  */
function extend(target, params) {
	if (!target) {
		target = {};
	}
	for (var prop in params) {
		target[prop] = params[prop];
	}
	return target;
}



2. 由于ie不完全遵守w3c标准,他的事件模型和别的浏览器不一样。调用的方法也不一样。
如果遇到要为控件动态增加事件。用onclick = function() {}一类的在dom动态创建的时候不一定有效,而且无法绑定多个句柄。下面介绍一个通用的支持全浏览器的绑定事件函数。
在大部分情况下,useCapture用的是false,所以这里干脆写死。
/**
  * 动态创建事件句柄
  * @param control 需要扩展的对象
  * @param eventName 事件名
  * @param fn 函数句柄
  */
addEventListener = function() {
	if (window.attachEvent) {
		return function(control, eventName, fn) {
			// 解决this为window对象的问题
			control.attachEvent('on' + eventName, function(e) {fn.call(control, e);});
		};
	} else if (window.addEventListener) {
		return function(control, eventName, fn) {
			control.addEventListener(eventName, fn, false);
		};
	} else {
		return function(control, eventName, fn) {
			control['on' + eventName] = fn;
		};
	}
}();


以上两个函数的使用Sample可以参照我写的其他的文章中的代码
0
0
分享到:
评论

相关推荐

    javascript指南和函数式编程

    本指南将深入探讨JavaScript的高效编程和函数式编程这两个重要主题,帮助开发者提升技能,实现更优雅、更可维护的代码。 《Effective JavaScript(中文版).pdf》这本书是JavaScript编程的经典之作,它包含了68个具体...

    JavaScript的一些工具函数的封装包括url的参数处理数字字符串日期等相关操作函数

    在这个名为"js_utils-master"的压缩包中,我们可以期待找到一系列封装好的JavaScript工具函数,它们涵盖了URL参数处理、数字与字符串操作以及日期相关的功能。 首先,让我们深入探讨URL参数处理。在Web开发中,我们...

    两个比较有用的Javascript工具函数代码

    在JavaScript的日常开发中,我们经常会遇到需要...这两个工具函数对于提升JavaScript代码的复用性和易用性是非常有帮助的。在实际开发中,这样的工具函数应该被广泛使用,尤其是在那些需要频繁处理DOM和事件的场景中。

    javascript函数式编程

    例如,如果我们有两个函数`f`和`g`,我们可以创建一个新的函数`h = f(g)`,使得`h(x)`等同于`f(g(x))`。 另外,JavaScript提供了`Array.prototype`和`Object.prototype`上的函数,如`Array.of`, `Array.from`, `...

    javascript常用函数 javascript 常用库

    2. Lodash:提供了大量实用的工具函数,如`_.map()`, `_.filter()`, `_.reduce()`,便于数据处理和对象操作。 3. Underscore.js:与Lodash类似,提供了一套实用的函数集合,帮助开发者编写更简洁的代码。 4. ...

    JavaScript函数式编程pdf

    5. 函数组合(Composition):函数组合是将两个或多个函数串联起来,形成一个新的函数,新函数的输出是原始函数的连续调用的结果。在JavaScript中,这通常通过点号操作符或compose函数来实现。 6. 闭包:JavaScript中...

    一本关于JavaScript中函数式编程的书

    函数组合是将两个或更多函数串联起来,形成一个新的函数。这种方式可以使代码更加模块化,每个函数只关注一个特定任务,而整个流程由组合函数定义。 五、柯里化 柯里化是将接受多个参数的函数转换为一系列接受单个...

    一个对象发序列化的工具函数

    这里的“一个对象发序列化的工具函数”是指一个JavaScript开发中的实用工具,它能够将JavaScript对象转换为可传输或存储的格式,例如JSON字符串,然后在需要时将其还原回原来的对象形式。这种功能对于网络应用、数据...

    javascript函数式编程 underscore.js

    4. **函数组合(Composition)**:通过将两个或更多函数串联起来形成一个新的函数,如Underscore的`_.compose`函数。 5. **函数式数据结构**:使用不可变数据结构(如Underscore的`_.clone`和`_.extend`)可以避免副...

    javascript(函数查询chm+语法pdf)

    `JavaScript参考手册.chm` 是一个帮助文件,包含JavaScript的所有函数和对象的详细信息。CHM(Compiled HTML Help)是一种Microsoft提供的帮助文件格式,将HTML页面编译成单一文件,方便用户离线查阅。这个文件可以...

    JavaScript 函数库、工具类

    - `isEqual`:比较两个值是否相等,考虑了复杂数据类型的比较。 xe-utils库以其丰富的功能和高效的性能,为开发者提供了极大的便利。通过深入理解和熟练运用这些工具函数,可以极大地提高JavaScript编程效率,降低...

    javascript变量和函数

    - Boolean:只有两个值,true和false。 引用数据类型主要包括: - Object:可以包含多个属性和方法的对象。 - Function:函数也是一种对象,可以被赋值给变量,作为参数传递,或者作为其他对象的属性。 在处理引用...

    JavaScript 函数式编程 (英文版)

    5. **函数组合**:函数组合是将两个或多个函数串联起来,形成一个新的函数,新函数的输出是原始函数的连续输入。在JavaScript中,我们可以使用`.`操作符或`Function.prototype.compose()`方法实现函数组合。 6. **...

    javascript 所有函数 代码+目录

    在JavaScript中,函数有两种主要声明方式:函数声明和函数表达式。函数声明如`function add(a, b) { return a + b; }`,而函数表达式如`var add = function(a, b) { return a + b; };`。两者的主要区别在于作用域和...

    javascript 好用及常用函数(ruby)

    JavaScript 和 Ruby 都是编程语言,虽然它们...在实际工作中,理解并熟练使用这些工具函数,将使你的代码更加简洁、高效。通过不断学习和实践,你将能够更好地驾驭JavaScript,从而成为一名出色的前端或全栈开发者。

    JAVASCRIPT函数之高阶函数.pdf

    addEventListener方法接受两个参数:一个是事件类型,另一个是当事件发生时要调用的回调函数。 最后,文档还隐含地展示了JavaScript中函数的灵活用法,比如函数可以作为对象存在,对象的属性可以是函数等。这种用法...

    常用JavaScript函数 16 - 30(自我总结)

    - `substring()`:提取字符串中两个指定的索引号之间的字符。 - `replace()`:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。 3. **类型转换** - `toString()`:将值转换为字符串。 ...

    JavaScript中函数对象调用模式总结

    4. **apply/call调用模式**:这两个方法允许我们改变函数的上下文(`this` 的值)和传入参数。`func.apply(context, argsArray)` 和 `func.call(context, arg1, arg2, ...)`, 其中 `context` 是 `this` 的值,`...

Global site tag (gtag.js) - Google Analytics