js中viod运算符总结

2023-11-05

目录

写在前面

常用语法

官方定义

常见用法

简单介绍


写在前面

简单来说,void运算符用于对给定的表达式进行求值,然后返回 undefined该运算符通常用于避免输出不应该输出的值。

常用语法

    void expression

官方定义

这个运算符能向期望一个表达式的值是undefined的地方插入会产生副作用的表达式。

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

常见用法

通过采用void 0undefined比直接写undefined更靠谱更安全,应该优先采用void 0这种方式;

填充<a>href确保点击时不会产生页面跳转;填充<image>src,确保不会向服务器发出垃圾请求;

简单介绍

在ES5之前,window下的undefined是可以被重写的,于是导致了某些极端情况下使用undefined会出现一定的差错。所以,用void 0是为了防止undefined被重写而出现判断不准确的情况。 ES5之后的标准中,规定了全局变量下的undefined值为只读,不可改写的,但是局部变量中依然可以对之进行改写。

非严格模式下,undefined是可以重写的,严格模式则不能重写。

除了防止被重写外,还可以减少字节。void 0代替undefined省3个字节。类似的还有很多常用的写法,下面介绍一些老司机的套路,嘿嘿。

    // 取整
    parseInt(a,10); //Before
    Math.floor(a); //Before
    a>>0; //Before
    ~~a; //After
    a|0; //After

    // 四舍五入
    Math.round(a); //Before
    a+.5|0; //After

    // 内置值
    undefined; //Before
    void 0; //After, 快
    0[0]; //After, 略慢

    // 内置值
    Infinity;
    1/0;

    // 布尔值短写法
    true; //Before
    !0; //After

    // 布尔值短写法
    false; //Before
    !1; //After

    // 判断奇偶数(装逼写法)
    if(n&1){
        console.log("n为奇数")
    }else console.log("n为偶数")

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

随机推荐

  • 华为OD机试 - 寻找相似单词(Java 代码实现)

    题目描述 给定一个可存储若干单词的字典 找出指定单词的所有相似单词 并且按照单词名称从小到大排序输出 单词仅包括字母 但可能大小写并存 大写不一定只出现在首字母 相似单词说明 给定一个单词X 如果通过任意交换单词中字母的位置得到不同的单词Y
  • 【工具应用】关于FileZilla传输文件时的Transfer type设定问题

    在工作中经常会使用FileZilla软件 FTP工具 上传或者下载文件 最近遇到一个下载文件内容异常的问题 涉及到该软件中的Transfer type设置 于是进行了一些深入的学习 在此与君共享 以作前车之鉴 问题概述 在Win10环境下
  • Java多线程中常见错误梳理,新手程序员必看

    很多Java新手在刚接触线程时都会被其复杂的知识点搞晕 在实际应用中同样错误不断 如何才能快速掌握多线程呢 常见的Java多线程错误有哪些 接下来就给大家分享Java新手学习入门中多线程失误梳理 无论是客户端还是服务器端多线程Java程序
  • 永远跟得上时代的Harbor部署

    文章目录 1 安装docker与docker compose 2 安装harbor 3 docker连接harbor 4 常见错误 4 1 401 Unauthorized 4 2 跨域问题 1 安装docker与docker compos
  • 可能是最好的Mac Charles 配置指南

    1 从官网下载最新的Charles https www charlesproxy com download 2 安装Charles 3 破解Charles 利用在线工具生成jar文件替换Charles中原来的charles jar文件 在
  • unity踩坑记录

    1 Unity ScriptableObject生成的asset文件 关闭unity时数据丢失 需要先setdirty EditorUtility SetDirty obj AssetDatabase SaveAssets 同时 保证Scr
  • 如何生成SSH key

    第一步 检查本机是否存在 SSH key 如下图调出Git Bash 窗口 输入下面的命令 ls al ssh 如果有文件id rsa pub 或 id dsa pub 则直接进入步骤3将SSH key添加到GitHub中 否则进入第二步生
  • 龙招港2021高考成绩查询,龙招港黑龙江招生考试信息港2021黑龙江高考志愿填报系统入口...

    龙招港黑龙江招生考试信息港2021黑龙江高考志愿填报系统入口 龙招港黑龙江招生网http www lzk hl cn 是2021黑龙江高考志愿填报官方网站 黑龙江龙招港提供2021黑龙江高考一本二本专科志愿填报系统 2021黑龙江高考各批次
  • 2021年机械、航空航天与汽车工程国际会议(CMAAE)检索通知

    2021年机械 航空航天与汽车工程国际会议 CMAAE 2021 会议已检索
  • 【FreeRTOS】多任务创建

    作者主页 凉开水白菜 作者简介 共同学习 互相监督 热于分享 多加讨论 一起进步 专栏资料 https pan baidu com s 1nc1rfyLiMyw6ZhxiZ1Cumg pwd free 点赞 收藏 再看 养成习惯 订阅的粉丝
  • 蓝桥杯JAVA-28.前缀和与差分详解

    个人博客 www tothefor com 蓝桥杯复习知识点汇总 目录 开始之前 推荐先看一下总结 再看内容 也许会帮你更好的理解 前缀和是指某序列的前n项和 可以把它理解为数学上的数列的前n项和 而差分可以看成前缀和的逆运算 合理的使用前
  • Mybatis最全笔记--今日分享(参考狂神说)

    一 CRUD Mybatis 1 namespace namespace中的包名要和Dao Mapper接口的包名一致 2 select 选择 查询语句 id 就是对应的namespace中的方法名 resultType sql语句执行的返
  • Nginx基本配置(中级)

    文章目录 一 nginx反向代理 1 什么是反向代理 2 nginx代理配置 二 nginx负载均衡 三 nginx缓存 四 nginx优化 1 worker processes 2 worker connections 3 worker
  • 5 分钟让你明白 “软链接” 和“硬链接”的区别

    今天在知乎上看到一篇十分有趣的问题 如何评价微软高级工程师痴迷于soft link这一linux常见概念 虽然又是知名撕逼王曾某的撕逼帖 但是我还是想就题目中链接的问题简单地讲讲 什么是链接 链接简单说实际上是一种文件共享的方式 是 POS
  • 【numpy学习笔记】数组的存储和下载

    1 Saving array in binary format npy gt gt gt a np array 1 2 3 4 5 gt gt gt np save array a a gt gt gt np load array a np
  • 基于单片机的温室大棚环境监测系统设计

    温室大棚对北方反季节蔬菜的种植具有重要意义 据了解全国各地温室大棚使用集中 但是大棚环境调控方式落后 管理落后 生产效率比较低 针对此问题本文提出了一种基于STM32单片机智能温室大棚控制系统方案 实现环境参数的自动检测 以达到智能化 自动
  • EFilm 4.1

    EFilm 4 1 安装文件 Keygen 第一部分 http download csdn net detail crazpro 9696491 第二部分 http download csdn net detail crazpro 9696
  • HTML+CSS+JS制作一个简单的计算器

    用HTML CSS JS制作了一个简单的计算器 它的使用类似于生活中使用的计算器 暂时未发现有任何计算上的错误 有问题请联系我 谢谢 最终成果图 HTML代码块
  • Linux命令笔记

    文章目录 目录操作 1 只读文件改为可编辑 2 修改目录的所属 文件操作 1 查找文件关键字 2 撤销操作 3 解压和打包文件 4 修改文件名 5 复制文件 修改用户操作 1 添加一个用户 2 切换用户 网络命令 1 查看端口占用 2 通过
  • js中viod运算符总结

    目录 写在前面 常用语法 官方定义 常见用法 简单介绍 写在前面 简单来说 void运算符用于对给定的表达式进行求值 然后返回 undefined 该运算符通常用于避免输出不应该输出的值 常用语法 void expression 官方定义