【转载】在JavaScript中使用操作符void返回undefined

在JavaScript中使用操作符void返回undefined技术

maybe yes 发表于2014-12-30 18:45

原文链接 : http://blog.lmlphp.com/archives/53  来自 : LMLPHP后院

在 JavaScript 函数中返回 undefined 的同时执行一个表达式,可以使用 void 关键字。大家比较熟悉的 void 的用法一般都是在链接的 href 属性中,可以屏蔽<a>标签的默认行为。请看下面的代码片段:

<script>
function(t){
    return o?t():void i.push(t)
}
</script>

在 JavaScript 中使用 void 操作任何一个表达式的返回值都是 undefined。在函数中获得 undefined 也有其他的方式,请看下面的例子,代码片段摘自LMLJS框架:

<script>
(function(win, doc, undf){

})(window, document);
</script>

上面的匿名函数中,在定义参数时多定义了一个,没有传入的参数默认值就是 undefined 。关于在 JavaScript 中如何获取 undefined ?直接使用 undefined 其实是不严谨的,因为 "undefined" 在 JavaScript 中并不是保留字,可以对其赋值。很多编辑器在高亮 JavaScript 代码时,对 undefined 进行了高亮,这点容易让程序员产生误解。因此,在JS中返回 undefined 类型值,最好的方式应该是使用 void 0。

阅(25)评(0)查看评论

时间: 2024-12-21 04:24:37

【转载】在JavaScript中使用操作符void返回undefined的相关文章

javascript 中 in操作符

in in 操作检查对象中是否有名为 property 的属性.也可以检查对象的原型,以便知道该属性是否为原型链的一部分. 对于一般的对象属性需要用字符串指定属性的名称 ? 1 2 3 var mycar = {make: "Honda", model: "Accord", year: 1998}; "make" in mycar  // returns true "model" in mycar // returns tru

javascript中的操作符详解1

好久没有写点什么了,根据博主的技术,仍然写一点javascript新手入门文章,接下来我们一起来探讨javascript的操作符. 一.前言 javascript中有许多操作符,但是许多初学者并不理解或曲解他们的用途,本章将会带领初学者们一起来学习一下javascript的几个常用操作符:typeof.in.delete.new. 二.学习目标 1. 深入了解javascript操作符:typeof.in.delete.new的功能及用法. 2. 剖析根本,掌握这些常用的操作符的运用场景,活学活

javascript中&quot;return obj === void 0&quot;这种写法的原因和好处

学习underscore.js的时候,发现源码中经常出现类似下面的代码: if (context === void 0) return func; if (array == null) return void 0; 以前没有见过这种写法,到网上搜了一些资料,刚好发现stackoverflow上也有人提出类似的疑问.这里总结归纳下,做个笔记.void其实是javascript中的一个函数,接受一个参数,返回值永远是undefined.可以说,使用void目的就是为了得到javascript中的un

JavaScript中逻辑操作符“==”与“===”的区别

Summary JavaScript中,逻辑操作符“===”会先检查操作数的数据类型,对不同的数据类型会返回false. 而“==”对不同类型的操作数进行比较时,会进行类型转换后再比较. Description 在JavaScript中进行判断的两种逻辑操作符: == (相等) === (严格相等/全等) 由于JavaScript是弱类型的脚本语言(weakly typed),用于作比较的两个操作数的类型允许不一致.而这两个逻辑操作符最大的区别在于对操作数类型的容忍度. 即:如果两个操作数的数据

javascript中new操作符的原理

javascript中的new是一个语法糖,对于学过c++,java 和c#等面向对象语言的人来说,以为js里面是有类和对象的区别的,实现上js并没有类,一切皆对象,比java还来的彻底 new的过程实际上是创建一个新对象,把新象的原型设置为构造器函数的原型,在使用new的过程中,一共有3个对象参与了协作,构造器函数是第一个对象,原型对象是二个,新生成了一个空对象是第三个对象,最终返回的是一个空对象,但这个空对象不是真空的,而是已经含有原型的引用(__proto__) 步骤如下: (1)    

javascript中parseInt(),08,09,返回0

javascript中在使用parseInt(08).parseInt(09),进行整数转换的时候,返回值是0 工具/原料 浏览器 文本编辑器 方法/步骤 javascript中在使用parseInt(08).parseInt(09),进行整数转换的时候,返回值是0,而parseInt("01")...parseInt("07")都是正确的,原因是当在前面有"0"时,javascript会认为这是一个八进制数,而"08"和&q

【转】Javascript 中 null、NaN和undefined的区别

原址:http://www.cnblogs.com/qiantuwuliang/archive/2010/01/12/1645302.html 1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 代码 var a1;var a2 = true;var a3 = 1;var a4 = "Hello";var a5 = new Object();var a6 = null;var a7 

Javascript 中 null、NaN和undefined的区别

1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->var a1;var a2 = true;var a3 = 1;var a4 = "Hello";var a5 = new O

javascript中错误使用var造成undefined

在javascript中依据变量作用的范围不同分为局部变量和全局变量,直接定义的变量是全局变量,全局变量能够被全部的脚本訪问:在函数中定义的变量是局部变量,局部变量仅仅在函数内有效. 假设全局变量和局部变量使用同样的变量名,则局部变量将会覆盖全局变量. 样例代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>js中全局变量与局部变量</title