js 运算符的执行顺序
2024-09-03 08:22:59
js 运算符的执行顺序
js 运算符优先级
Operator Precedence
下表从最高(21)到最低(1)优先顺序排列
left-to-right
从左到右 / 先左后右
right-to-left
从右到左 / 先右后左
逻辑非
一元加减
一元加 / 一元减
Precedence & Associativity
优先级 & 关联性
let a, b;
a = b = 5;
// same as writing
a = (b = 5);
a || (b * c); // evaluate `a` first, then produce `a` if `a` is "truthy"
a && (b < c); // evaluate `a` first, then produce `a` if `a` is "falsy"
a ?? (b || c); // evaluate `a` first, then produce `a` if `a` is not `null` and not `undefined`
a?.b.c; // evaluate `a` first, then produce `undefined` if `a` is `null` or `undefined`
demo
"use strict";
/**
*
* @author xgqfrms
* @license MIT
* @copyright xgqfrms
* @created 2020-10-01
* @modified
*
* @description
* @difficulty Easy Medium Hard
* @complexity O(n)
* @augments
* @example
* @link
* @solutions
*
* @best_solutions
*
*/
const log = console.log;
// console.log(([][[]]+[])[+!![]]+([]+{})[!+[]+!![]]);
// log(([][[]]+[])[+!![]]+([]+{})[!+[]+!![]]);
log([]);
log([[]]);
log(+[]);
log([][[]]);
log(([][[]]+[]));
log([+!![]]);
log(!![]);
log(+!![]);
log(`\n+true =`, +true)
// log(([][[]]+[])[]);
// log((undefined)[0])
// log((undefined)[1])
log(+([]+{}));
log([]+{});
log(+[]);
// 0
log(!+[]);
// true
log(`\n!0 =`, !0);
// true
log(!![]);
// true
log(+!![]);
// 1
log(`\n+true =`, +true);
// 1
log(!+[]+!![]);
// 2
log(`\ntrue + true =`, true + true);
// 2
log([!+[]+!![]]);
// [2]
log(``, +([]+{})[!+[]+!![]])
// NaN
log(``, ([]+{})[!+[]+!![]])
// "b"
refs
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Operator_Precedence
xgqfrms 2012-2020
www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
最新文章
- SQL Server 2008 R2——使用FOR XML PATH实现多条信息按指定格式在一行显示
- 使用git提交内容到网盘
- PostgreSQL Replication之第十章 配置Slony(5)
- PythonOCC 3D图形库学习—创建立方体模型
- java基础进阶:SQL的运用
- C99新特性
- JPush极光推送 Java调用服务器端API开发
- Ubuntu Docker 安装和配置 GitLab CI 持续集成
- 【学习】js学习笔记:数组(二)
- Java注解(Annotation):请不要小看我!
- 二、自动化测试平台搭建-搭建jango环境
- deepfake-faceswap第一篇论文-2016摘要
- 21备忘录模式Memento
- Wamp修改端口
- Docker学习笔记之docker-save vs docker-export vs docker-commit
- react-native 安卓支持 gif动态图
- CodeFirst Update-Database 出现对象&#39;DF__**__**__**&#39; 依赖于 列&#39;**&#39;。
- requirejs初体验
- Unity VR编辑器――如上帝般创建VR内容,Project Soli google用雷达识别手势体积相当于一张 Mini SD 内存卡
- MongoDB(课时6 关系查询)