js的运算法则
2022/7/27 14:25:20
本文主要是介绍js的运算法则,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1. 相加:
- 一个string和number相加,会自动转为string,最后返回的是一个字符串
- 其他的相加返回的是number
2.位运算
位运算:会先转成二进制再执行左移还是右移或者取反
<<左移,数字往左移(变大)
右移,数字往右移(变小)
~:是js里的按位取反操作符 , ~~ 就是执行两次按位取反,其实就是保持原值,但是注意虽然是原值,但是对布尔型变量执行这个操作,会转化成相应的数值型变量,也就是true === 1,false === 0。 ~~"" == 0 ~~[] == 0
3.进制间的转换
// 10进制转8进制,结果是字符串 var number=24; console.log(number.toString(8)); // 8进制转10进制,结果是数值 var a='24'; console.log(parseInt(a,8));
4.计算顺序:
- 先算括号里面的,再算++(--)再进行乘除取余,再进行比较运算,再进行逻辑运算,最后赋值
- 括号不能和++(--)一起使用,不能写在括号旁边
5.比较运算
### 5.1 字符串和数值进行比较
console.log("123"==123);//true 字符串会自动转为Number console.log("123"===123);//false 要值和数据类型都一样菜能相等 console.log("123">321);//false console.log("321A">123); //false 不是全数字,无法转成Number,会自动转成NaN,出现NaN一般就是false console.log(NaN==NaN);//false
### 5.2.undefined(null的派生子类)和null比较
console.log(undefined==null);//true console.log(undefined===null);//false
### 5.3.字符串和字符串比较(拿第一位的ASCII码进行比较)
console.log('a'>'b');//false console.log('a'<'b');//true console.log('ba'<'abz');//false 比较的是第一位的大小
### 5.4.布尔类型的值和null进行比较
console.log(true>null);//true 1>0 console.log(true>undefined);//false undefined会转成NaN,有NaN为false
### 5.5.先转换数据类型再比较
console.log(Number(true)==1);//true console.log(Number(true)===1);//true console.log(Boolean(0)===false);//true 0为false
这篇关于js的运算法则的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16Vue3资料:新手入门必读教程
- 2024-11-16Vue3资料:新手入门全面指南
- 2024-11-16Vue资料:新手入门完全指南
- 2024-11-16Vue项目实战:新手入门指南
- 2024-11-16React Hooks之useEffect案例详解
- 2024-11-16useRef案例详解:React中的useRef使用教程
- 2024-11-16React Hooks之useState案例详解
- 2024-11-16Vue入门指南:从零开始搭建第一个Vue项目
- 2024-11-16Vue3学习:新手入门教程与实践指南
- 2024-11-16Vue3学习:从入门到初级实战教程