`
hougbin
  • 浏览: 502513 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

js 感叹号!!

 
阅读更多
var ret = !!document.getElementById

等价于:

var ret = document.getElementById ? true : false;

  

  当值是非空字符串和非零数字返回true,当值是空字符串、0或者null返回false。

 

var a = " "; alert(!!a);   //true
var a = "s"; alert(!!a);   //true
var a = true; alert(!!a);   //true
var a = 1; alert(!!a);   //true
var a = -1; alert(!!a);   //true
var a = -2; alert(!!a);   //true

var a = 0; alert(!!a);   //false
var a = ""; alert(!!a);   //false
var a = false; alert(!!a);   //false
var a = null; alert(!!a);   //false

分享到:
评论

相关推荐

    探讨js中的双感叹号判断

    在JavaScript中,双感叹号(!!)是一种常见的用于将任何值转换为布尔值(Boolean)的技巧。这个操作符在编程中被广泛使用,尤其是在条件判断和逻辑表达式中。让我们深入探讨一下双感叹号的工作原理及其应用。 首先...

    javascript中2个感叹号的用法实例详解

    在JavaScript编程语言中,双感叹号(!!)的用法是一种常见的类型转换技巧,它用于将非布尔值转换为布尔值。本文将深入探讨这种用法,并通过实例来阐述其工作原理和应用场景。 首先,我们要理解JavaScript中的逻辑非...

    JavaScript中两个感叹号的作用说明

    在JavaScript编程语言中,双感叹号(!!)是一种常见的逻辑操作符组合,它被用来将任何类型的值转换为布尔值(Boolean)。这个操作符通常用于强制类型转换,确保变量始终为true或false。理解双感叹号的作用对于编写...

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

    首先,单个感叹号(!)在JavaScript中用作逻辑非操作符,用于将操作数的布尔值取反。具体来说,它能够将任何类型的值转化为布尔类型,然后取反。例如,数字、字符串、对象以及非空数组都会被转化为true,而null、...

    ModuleExclamation:此模块将返回一个感叹号 (!)

    在JavaScript编程语言中,"ModuleExclamation"是一个小型但有趣的模块,它的主要功能是返回一个感叹号(!)。这个模块的使用可能看似简单,但在实际的编程场景中,它能体现模块化编程的优势,帮助开发者更好地组织代码...

    前端html的感叹号卡商城.zip

    在"感叹号卡商城"中,可能会使用这些元素来创建不同区域,如头部导航、商品展示区、购物车和页脚信息。 3. **列表和表格**: 商品分类和展示可能会使用`<ul>`、`<ol>`列表或`<table>`元素,以便用户能够方便地浏览和...

    谈谈JS中的!!

    第一个感叹号会将变量或表达式转换为它的逻辑非(即falsy值变为truthy,truthy值变为falsy),而第二个感叹号则再次将结果逻辑非,从而得到一个明确的布尔值。 例如,如果我们有如下代码: ```javascript var a; ...

    Javascript !!的作用

    在JavaScript编程中,双感叹号"!!"被用作一种简洁的方式来进行布尔值的强制转换。这种用法通常用于将任何类型的值转换为它所对应的布尔值。要解释这一点,我们首先需要了解JavaScript中的真值(truthy)和假值...

    javascript笔记 javascript笔记

    - **解释:** 用户点击链接后会弹出一个警告框显示一个感叹号。 **示例4:** ```html <a href="javascript:confirm('Are you sure?')">Click ``` - **解释:** 用户点击链接后会弹出一个确认对话框询问是否确定,...

    浅谈JavaScript中的“!!”作用

    这个操作符组合通常由两个感叹号"!"组成,其中每个"!"首先对给定的值进行逻辑非操作,即将其布尔值取反;接着,第二个"!"再将结果取反,从而得到一个布尔值。这种用法对于确保变量在布尔上下文中正确表现其真伪性...

    JavaScript中双叹号!!作用示例介绍

    而使用单个感叹号对undefined变量进行逻辑非操作会得到true,但进一步的双感叹号操作会将其转换为false,这使得我们能够轻松地区分出变量是否有被赋予具体的真值。 在实际编程中,我们可能会遇到需要将不同类型的...

    JavaScript中双叹号(!!)作用示例介绍

    当我们连续使用两个感叹号时,实际上是进行了一次逻辑非操作,然后立即再次进行了一次逻辑非操作。这相当于进行了两次逻辑非,第一次得到一个非原值的布尔值,第二次又将这个非原值的布尔值取反,最终得到的还是原始...

    JavaScript 43道面试题和答案(2025最新版).docx

    JavaScript 中存在类型转换,例如一元加号(+)操作符能将布尔值转换为数字(true 转换为 1,false 转换为 0),双感叹号(!!)操作符能将任何值转换为布尔值。此外,当使用非数字作为算术运算符的参数时,会先尝试...

    JavaScript中双符号的运算详解

    本文将深入探讨两种常见的双符号运算:双波浪号(`~~`)和双感叹号(`!!`),并提供相关的示例代码以帮助理解它们的用法。 ### 一、双波浪号(`~~`) 双波浪号(`~~`)运算符是一种快速的整数取整方法,通常用于...

    深入浅析JavaScript函数前面的加号和叹号

    然而,当加号(+)或类似的一元操作符(如感叹号、位非操作符~)放在函数前面时,它告诉解析器这是一个表达式,而非声明。接着,后面的`()`立即执行这个函数表达式,这就是所谓的立即执行函数(IIFE,Immediately ...

    javascript技巧(珍藏版)

    - 通过两个感叹号`!!`来实现,非零数值和非空字符串都会被转换为`true`,如 `var bool = !!myVar;` 4. **将值转换为数组**: - 可以通过简单的数组字面量来实现,如 `var array = [myVar];` 此外,在使用`new ...

    Snarkdown是一个用JavaScript编写的极简的Markdown解析器

    6. 图片:与链接类似,但前缀是感叹号,如`![](http://example.com/image.jpg)`。 7. 引用:在文本前插入`>`符号。 8. 代码块:使用三个反引号(```)包围多行代码,或者用一对反引号(`)包裹单行代码。 9. 还包括代码...

Global site tag (gtag.js) - Google Analytics