ECMAScript一元操作符
2024-09-15 14:50:49
在ECMAScript中提供了一元操作符进行简单的运算,一元操作符是ECMAScript中最简单的操作符,它只能对一个值进行操作。 一元操作符有两种类型,一种是递增和递减操作符,一种是一元加和一元减操作符。
递增和递减操作符
ECMAScript递增递减操作符是直接借鉴C语言的,由”++”和”–“分别来表示自身递增和递减。递增递减还有两种情况,分别为前置型和后置型。
前置型:前置型的作用是在包含它的语句求值之前进行递增递减,例如:
var test1 = 10; var test2 = 20; var test3 = –test1 + test2; 执行过后的值为: test3的值为29、test1的值为9、test2的值20 或者 var test3 = ++test1 + test2; 执行过后的值为:test3的值为31、test1的值为11、test2的值为20
后置型:后置型的作用是在包含它的语句求值之后进行递增递减,例如:
var test1 = 10; var test2 = 20; var test3 = test1– + test2; 执行过后的值为:test3的值为30、test1的值为9、test2的值20 或者 var test3 = test1++ + test2; 执行过后的值为:test3的值为30、test1的值为11、test2的值为20
递增递减操作符对所有类型的变量进行转换的规则如下:
1、如果是数值则直接进行递增递减操作。 在操作一个包含有效数字字符的字符串时,先将其转换为数值,再进行递增递减操作。字符串变量转换为数值变量。
2、在操作一个不包含有效数字字符的字符串时,直接将变量设置为NaN。字符串变量转换为数值变量。
3、在操作布尔值的时候,true转换为数值0、false转换为数值1,然后进行递增递减操作。布尔值变量转换为数值变量。
4、如果操作是对象,先调用对象的valueOf()方法得到一个可以操作的数值,然后再用上面其他规则转换。如果转换过后的值不是一个有效的数值(NaN),那就再次调用toString()方法再应用上面的其他规则,如果还不是,则返回NaN。对象变量转换为数值变量
一元加减操作符
一元加减操作符由”+”和”-“分别表示加减操作符,它是放在转换值前面的,转换规则和Number()转型函数一样进行操作(ECMAScript中数值转换操作)。它们在运算中比较常见,经常会用于正负数转换。例如:
var test = 123; test = -test; test的值为:-123 test = +test; test的值为:123
最新文章
- (转载)构建public APIs与CORS
- 【mysql】关于循环插入数据 存储设计
- 端口扫描base
- HDU 3681 Prison Break(BFS+二分+状态压缩DP)
- bzoj 1208 宠物收养所--splay
- [Locked] 3Sum Smaller
- 主持汇 - NEXT
- Lucene核心--构建Lucene搜索(上篇,理论篇)
- ReSharper C++计划上市
- mvc4项目数据库优先的尝试
- javascript的词法作用域
- java 编程性能调优
- 大众点评selfxss结合两个csrf变废为宝(已修复,故公开,不涉及真实参数)
- Supervisor使用教程
- Android Studio Gradle Build Running 加速
- Note | Markdown
- 自定义Write节点的beforerender属性
- Jmeter关于上传图片接口
- 前端-CSS-9-文本和字体-背景颜色
- GUI程序设计3
热门文章
- 让BOOTSTRAP默认SLIDER支持触屏设备
- SmartbBear给出的11条代码审查最佳实践
- Hyper-V虚拟化--逻辑网络、VM网络、逻辑交换机
- Eclipse开发PHP环境配置
- Kinect for Windows V2和V1对照开发___深度数据获取并用OpenCV2.4.10显示
- 【转】C++里定义全局变量和函数常用方法
- 玩转Android之MVVM开发模式实战,炫酷的DataBinding!
- youku的js脚本的工具函数和初始化方法
- 在ModelSim波形图中以参数名显示变量
- C++学习(二)