标签:
(!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]

| 运算符 | 说明 |
|---|---|
| .[ ] ( ) | 字段访问、数组索引、函数调用和表达式分组 |
| ++ — – ~ ! delete new typeof void | 一元运算符、返回数据类型、对象创建、未定义的值 |
| * / % | 相乘、相除、求余数 |
| + – + | 相加、相减、字符串串联 |
| << >> >>> | 移位 |
| < <= > >= instanceof | 小于、小于或等于、大于、大于或等于、是否为特定类的实例 |
| == != === !== | 相等、不相等、全等,不全等 |
| & | 按位“与” |
| ^ | 按位“异或” |
| | | 按位“或” |
| && | 逻辑“与” |
| || | 逻辑“或” |
| ?: | 条件运算 |
| = OP= | 赋值、赋值运算(如 += 和 &=) |
| , | 多个计算 |
根据此规则,我们把这一串运算分为以下16个子表达式:

| 参数 | 结果 |
|---|---|
| undefined | NaN |
| null | +0 |
| boolean | true被转换为1,false转换为+0 |
| number | 无需转换 |
| string | 由字符串解析为数字。例如,”324″被转换为324 |
| 参数 | 结果 |
|---|---|
| undefined | “undefined” |
| null | “null” |
| boolean | “true” 或者 “false” |
| number | 数字作为字符串。比如,”1.765″ |
| string | 无需转换 |


标签:
原文地址:http://www.cnblogs.com/liuyanxia/p/5798483.html