javascript 一些特殊的字符运算

时间:2023-02-13 09:19:04

 1.什么是 --> ?

    这两个分开是很简单的两个运算符,比如--,一般表示自减,var i = 5;while(i){console.log(i--);},会打印出5,4,3,2,1;

                                                                     > ,为大于号,一般用于比较运算。

   那么这两个结合起来呢?

  在c中 -->表示的是趋向于,也就是说 --> 0 表示的是趋向于0.

 

#include <stdio.h>
int main()
{
int x = 10;
while (x --> 0) // x goes to 0
{
printf(
"%d ", x);
}
}

 那么它在javascript中是否同样起效?

var n = 5;
while (n --> 0){
console.log(n);
}

在Chrome的控制台运行之后的效果是这样的

javascript 一些特殊的字符运算

也就是说-->这个箭头函数(此箭头函数非彼箭头函数=>)同样适用于javascript,大家有没有觉得这个箭头函数很眼熟

<script language="javascript"> 
<!--
document.bgColor
= "brown";
// red
// -->
</script>

箭头符号在 JavaScript 诞生时就已经存在,当初第一个 诞生时就已经存在 JavaScript 教程曾建议在HTML 注释内包裹行脚本,这样可以避免不支持 JS 的浏览器误将 JS 代码显示为文本。

那么除了 --> 这种形式还有别的表现形式吗?

var x = 5;
while( --x> 0 )
{
console.log(x);
}

javascript 一些特殊的字符运算

 

我们惊奇的发现 --x>也可以表现出趋于的性质,那么--x>是什么意思?

这表示  递减x然后比较X和0 >操作符 

讲到这里大家基本都明白了吧,于是可以延伸出一系列的运算符

--> x-->0
++> x++>0
-->= x-->=0
++>= x++>=0
--< x--<0
++< x++<0
--<= x--<=0
++<= x++<=0

2.~~的作用

从字面上看~~就是转反再转反包括对布尔类型、undefined、null的操作如

javascript 一些特殊的字符运算

另外一点把true转化为1的可以直接Number(true)

但是这不是最大的亮点,~~可用于取整,与 | 0功能相当

javascript 一些特殊的字符运算

值得一提的是 它与 Math.floor的区别是,Math.floor是向下取整,而~~在正数的范围是向下取整,在负数的范围是向上取整的。

另外 !!将一个值方便快速转化为布尔值 !!window===true 

这些特殊运算符在某种程度上大大的方便了我们的计算使用。