void 运算符

void 运算符会对给定的表达式进行求值,然后直接返回 undefined

void 运算符通常只用于获取 undefined 的原始值,一般使用 void(0)(等同于 void 0)。在上述情况中,也可以使用全局变量undefined 来代替(假定其仍是默认值)。

  1. <script>
  2. console.log(void(console.log("OK")));
  3. </script>

运行结果

  1. OK
  2. undefined

一般我个人称 javascript:void(0) 死链接

javasccript:; 空连接

而javasccript:;是为空链接,其实他也也是直接返回的undefined,而前者是计算完毕之后返回undefined

推荐使用javascript:;

个人习惯使用前者,好像感觉后置更快点,我感觉在前端就无所谓了!

可以去看看各个大网站是输入使用连接的

模拟

当用户点击一个以 javascript: URI 时,浏览器会对冒号后面的代码进行求值,然后把求值的结果显示在页面上,这时页面基本上是一大片空白,这通常不是我们想要的。只有当这段代码的求值结果是 undefined 的时候,浏览器才不会去做这件 傻事 ,所以我们经常会用 void 运算符来实现这个需求
看代码:

  1. <ahref="javascript:void(0);">
  2. 这个链接点击之后不会做任何事情,如果去掉 void(),
  3. 点击之后整个页面会被替换成一个字符 0。
  4. </a>
  5. <ahref="javascript:void(document.body.style.backgroundColor='green');">
  6. 点击这个链接会让页面背景变成绿色。
  7. </a>

参考资料

番外篇关于<a href="#"></a>

# 包含了一个位置信息 , 默认的锚是 #top , 也就是网页的上端
如果想完成跟右侧等价的写法,我提供了三种方式进行参考

  1. <ahref="#"onclick="returnfalse;">href</a>
  2. <ahref="javascript:return false;"onclick="调用的js方法">href</a>
  3. <ahref="####">这里是空链接,没有经过测试</a>

[理论篇]一.JavaScript中的死连接`javascript:void(0)`和空连接`javascript:;`的更多相关文章

  1. <a href="javascript:void(0);" id='test' onclick="javascript:alert('即将上线,敬请期待!');"><em class="rmwd"></em>征稿平台</a>

    <a href="javascript:void(0);" id='test' onclick="javascript:alert('即将上线,敬请期待!');&q ...

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

    javascript中在使用parseInt(08).parseInt(09),进行整数转换的时候,返回值是0 工具/原料   浏览器 文本编辑器 方法/步骤     javascript中在使用pa ...

  3. 获取数组中多个相加等于0的一组数字 javascript

    //获取数组中两个相加等于0的一对数字,比如[ [ -10, 10 ], [ -5, 5 ] ] var arr=[-5,10,1,-10,3,4,5,9] //对数组进行排序 arr.sort(fu ...

  4. javascript于&quot;return obj === void 0&quot;这样的书面理由和优势

    得知underscore.js什么时候,查看源代码经常出现的类别似下面的代码: if (context === void 0) return func; if (array == null) retu ...

  5. JavaScript中的window对象的属性和方法;JavaScript中如何选取文档元素

    一.window对象的属性和方法 ①setTimeout()方法用来实现一个函数在指定毫秒之后运行,该方法返回一个值,这个值可以传递给clearTimeout()用于取消这个函数的执行. ②setIn ...

  6. 【从0到1学Web前端】javascript中的ajax对象(一) 分类: JavaScript 2015-06-24 10:18 754人阅读 评论(1) 收藏

    现在最流行的获取后端的(浏览器从服务器)数据的方式就是通过Ajax了吧.今天就来详细的来学习下这个知识吧.如果使用ajax来访问后段的数据,浏览器和浏览器端的js做了那些工作呢?我做了一个图,请大家看 ...

  7. javascript中对条件判断语句的优化 分类: JavaScript 2015-06-07 09:54 832人阅读 评论(2) 收藏

    不管写什么程序,平时都会用到条件语句,如:if...else... switch这样的语句,来达到对条件的判断.下面看来一段代码: function abc(test){ if (test == 1) ...

  8. 再次讨论javascript 中的this

    原文: http://www.jb51.net/article/77519.htm 核心总结: 1.不论函数在哪里被调用,只要没有指定调用方,则this都指向window.指定了调用方,就指向调用方. ...

  9. javascript中的this与prototype,原型理解

    JavaScript 函数调用 JavaScript 函数有 4 种调用方式. 每种方式的不同方式在于 this 的初始化. this 关键字 一般而言,在Javascript中,this指向函数执行 ...

随机推荐

  1. 软工实践-Beta 冲刺 (2/7)

    队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 1.界面的修改与完善 展示GitHub当日代码/文档签入记 ...

  2. DocX插件

    DocX是一个用C#编写的.NET库,它允许开发人员以简单直观的方式操作Word文件.

  3. iOS日期的加减

    NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; NSDateCo ...

  4. vue 使用出现的问题(持续记录)

    今天写vue 的时候,发现有几个警告.原因是 我把组件起的名字写的和默认标签的名字一样了,导致系统不知道,怎么解析. 我写了一个Header 组件, 和h5里面的header重名, 解决方案1: he ...

  5. JS单例模式在工作中的使用

    为了尽可能的减少全局变量的污染,在写js的时候可以采用单例模式,形式如下: 比如有一个js叫demo.js,那么我们可以在js里这样写: var demo = {} 这样做的目的是将整个js当成一个对 ...

  6. php 的stdClass类的简单实用

    <?php $person = new stdClass(); $person->name = "yu"; $person->sex = "man&qu ...

  7. 从解决一个java.lang.NoSuchMethodError想到的

    今天在发布系统部署一个web app的时候,发现应用服务器(tomcat 7.0.26)不能正常启动,于是远程登陆到服务器上查看应用服务器的启动日志,在tomcat_home的logs/localho ...

  8. C 语言assert使用

    1.assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include <assert.h>void assert( i ...

  9. equals比较对象

    object类的equals方法用来比较是否是同一个对象,比较内存地址. jdk中有些类重写了equals方法,只要类型,内容相同,就相等. 类如果涉及到比较应该重写equals方法,比较内存地址没有 ...

  10. vi命令文件编辑

    vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器. Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能 ...