`

JS中的!!

 
阅读更多

转载:http://www.cnblogs.com/iampoet/archive/2013/01/12/2857598.html

 

var o={flag:true};  var test=!!o.flag;//等效于var test=o.flag||false;  alert(test);

由于对null与undefined用!操作符时都会产生true的结果,

所以用两个感叹号的作用就在于,

如果明确设置了o中flag的值(非 null/undefined/0""/等值),自然test就会取跟o.flag一样的值;

如果没有设置,test就会默认为false,而不是 null或undefined。

分享到:
评论

相关推荐

    js中!和!!的区别与用法

    在JavaScript中,`!` 和 `!!` 是两种常见的用于逻辑运算和类型转换的操作符,它们在编程中扮演着重要角色。理解它们的区别和用法对于编写高效且简洁的JavaScript代码至关重要。 首先,单个 `!` 操作符主要用于逻辑...

    超级实用的js !!

    函数作用域和块级作用域是JavaScript中常见的作用域概念,而闭包则是函数作用域的一个关键特性。 3. **原型与继承**:JavaScript的继承机制是基于原型链的,理解如何通过构造函数、`prototype`对象以及`__proto__`...

    JS,javascript控件大全!消息提示,菜单演示,弹出框,各种特效。项目中实用!

    1. 消息提示:在JavaScript中,我们可以使用`alert()`、`prompt()`和`confirm()`函数来创建基础的消息提示。`alert()`用于显示简单的警告信息;`prompt()`则允许用户输入信息,常用于获取用户数据;`confirm()`则...

    我写的调用网页的javascript函数!请大家帮忙看看!

    在这个场景中,我们需要检查`client_str.html`中是否有正确引用`call_js`文件的`<script>`标签,以及JavaScript函数是否被正确调用。同时,`call_js`文件中应包含`myFunction`的定义,确保其逻辑正确无误,并且没有...

    用javascript做的CS游戏!!!

    4. `canvas.js`:这是核心的JavaScript文件,其中包含了游戏的主要逻辑和功能。通过操纵HTML5的`<canvas>`元素,开发者可以在这里编写绘制图形、处理用户输入、更新游戏状态、碰撞检测等游戏机制的代码。 5. `floor...

    Lang.js, 在JavaScript中,Laravel 转换器类 !.zip

    Lang.js, 在JavaScript中,Laravel 转换器类 ! 安装不同的安装方法:npm install lang.js:Bower: bower install lang.js手动:下载最新发布版本。文档初始化var lang = new Lang

    新版之后的js批量生成二维码!!!

    在JavaScript中,我们可以利用开源库如`qrcode-generator`或`html2canvas`结合`canvas`元素来生成二维码。 1. **qrcode-generator** 库:这是一个纯JavaScript实现的二维码生成库,它允许你通过传入特定的数据和...

    JavaScript中进行byte的计算(含java及js查表法生成crc的代码)

    网络资源的整合,以及自己摸索使用JavaScript进行byte计算的路,包括详细的文档,范例代码(java和js按算法crc16生成crc码),为下载其中资源,花费若干分,所以设定了下载分。谢谢大家!

    js 实现 用JavaScript导出图像到Excel

    js 实现 用JavaScript导出图像到Excel! 值得下载看看!资源免费,大家分享!!

    js特效点击会变色哦!

    在JavaScript中,我们可以使用`document.getElementById()`、`document.querySelector()`或`document.querySelectorAll()`等方法找到特定的HTML元素。 2. 事件监听:JavaScript可以监听用户的交互行为,比如点击...

    极好js效果集合!!!

    在“极好js效果集合”这个主题中,我们可以深入探讨JavaScript在网页动态效果、用户交互以及网页增强方面所扮演的重要角色。 1. **DOM操作**:JavaScript能够操作Document Object Model(DOM),这是HTML和XML文档...

    混淆js代码,把javascript代码变成()[]!这种乱七八糟的字符,但是不影响其运行.zip

    在标题和描述中提到的"混淆js代码,把javascript代码变成()[]!这种乱七八糟的字符",实际上指的是JavaScript代码经过混淆处理后呈现出的形式。混淆后的代码虽然看起来难以理解,但其功能与混淆前保持一致,仍能正常...

    js 实现 JavaScript遍历对象中的所有属性

    js 实现 JavaScript遍历对象中的所有属性! 值得下载看看!资源免费,大家分享!!

    js 实现 用JavaScript隐藏或显示表格列

    js 实现 用JavaScript隐藏或显示表格列! 值得下载看看!资源免费,大家分享!!

    js图片切割,很有用!

    在JavaScript中实现图片切割,通常涉及以下几个关键步骤: 1. **加载图像**:首先,我们需要获取到用户想要裁剪的图像。这可以通过HTML的`<img>`标签或者使用`FileReader` API读取上传的本地文件完成。 2. **创建可...

    JS中的public和private对象,即static修饰符

    在JavaScript中,public、private和static这些概念并非原生关键字,但可以通过特定的编码模式来实现类似的功能。在C#等静态类型语言中,public、private和static是访问修饰符,用于控制类成员的可见性和作用域。而在...

    浅谈JS中的!=、== 、!==、===的用法和区别

    在JavaScript中,`!=`、`==`、`!==`和`===`是四个非常重要的比较运算符,它们用于比较变量或表达式的值。理解它们的用法和区别对于编写健壮的JavaScript代码至关重要。 首先,`==`是等同运算符,它允许不同类型的值...

    浏览器兼容 谷歌IE8.js,IE9.js下载

    `IE8.js`着重于解决IE8中的兼容性问题,这个版本的IE对很多现代JavaScript特性支持不足,如函数对象的`addEventListener`和`removeEventListener`方法,以及对JSON的支持。`IE8.js`会模拟这些特性,使开发者能够使用...

Global site tag (gtag.js) - Google Analytics