关于一些JS的运算符
首先呢,什么是JavaScript;JavaScript是一种脚本语言,也是一种解释型语言,更是一种由数据值决定变量类型的弱类型语言
JavaScript主要由三部分组成
ECMAScript 这个是组成部分的核心
DOM 和 BOM
变量的定义是在内存中声明的一段可以存储可以变化的量
1.赋值运算符
语法为 x+=y 其等价于 x=x+y
其他算法与加法的语法相同
var b = a + b;
var b+=a;
2.关系运算符
string与number判断大小时,首先将字符串string隐式转换为number类型,用的是默认的Number()函数
Number()函数只能转化纯数字的数值,当其中夹杂着非数字时,例如30a,则转换结果为NaN
任何一个数据与NaN做比较时,得到的结束一定都是false
string字符串与string字符串之间比较大小时,比较的方法是根据每一个字符的Unicode码来做比较
3.逻辑运算符
用于多个条件之间的判断关系
&& 多个条件都必须满足
其短路逻辑为:当有一个条件出现false时,后面的条件便不会判断
var a = prompt('请输入价格');
a >= 100 && (a = a * 0.8);
console.log('付出的价格为:' + a);
|| 满足其中一个条件
其短路逻辑为:当有一个条件出现true时,后面的条件便不会判断
var a = prompt('请输入留言');
var result = a || ('主人正在忙,请您留言');
console.log(result);
! 取反
var a = prompt(' 请输入一个数据');
console.log('是不是一个数:'+ !isNaN(input) );
4.位运算符
位运算在运算时一定会将数据转为二进制,而小数会被转换成整数
按位且 & 通常与二进制的1一起使用,用于判断数据的奇偶性
var input = prompt(' 请输入一个数');
var result = input & 1;
result = 0? '为偶数' : '为奇数' ;
console.log(result);
按位或 | 通常与二进制的0一起使用,用于number数据的向下取整
<< 按位左移 将二进制向左移动,移动多少位就在二进制最右边补上几个0
>> 按位右移 将二进制向右移动,当数据被移除二进制最后一位数,数值为0
^ 异或 将两个需要运算的数字转换为二进制,在同一位置上只有一位数字为1的时候得到的值为1,否则为0
也可用于交换两个数值之间的计算
5.条件运算符 三目运算
单目运算符 ++ -- !
双目运算符 + - * / % && || ^ & | < >
三目运算符 表达式为: 表达式1?表达式2:表达式3;
当表达式1成立时,输出表达式2,否则输出表达式3
其中表达式1的结果为Boolean类型,表达式2表示true,表达式3表示false
var input = prompt('请输入您的成绩');
input >=60? '及格 ' : '未及格 ' ;
console.log(input);
最后呢,再写一下浏览器的内核与引擎
内核名 排版引擎 脚本解释引擎
IE Trident -(内核自带) Chakra
Firefox Gecko - Monkey
Safari Webkit Webcore Nitro
Chrome Webkit Webcore V8
Opear(2013年之前) presto - Caraken
Opear(2013年到如今) Webkit Webcore V8
小 练习
1、弹出一个输入提示框,请用户输入一个表示工资的数字,按如下规则在控制台中输出改工资金额的级别:
1)大于等于20000,显示 高工资
2)小于20000大于等于8000 显示 中高工资
3)小于8000 显示 普通工资
<script>
var input = prompt('请输入您的工资');
var result = input >= 20000? '高工资':input <8000? '普通工资':'中高工资';
console.log(result);
</script>
2、体重健康指数(克莱托指数)计算公式如下:
体重(kg)/身高的平方(m)
20-25正常,20以下偏瘦,25以上偏胖
例如:某人是60kg,1.7m。那就是:60/(17*17)=20.76,属于“正常”体重;
<script>
var a = prompt('请输入您的体重');//将体重赋值给a
var b = prompt('请输入您的身高');//将体重赋值给b
var c = a / (b*b); //计算克莱托指数c
var result = c >= 25? '偏胖;': c <= 20? '偏瘦;': '正常;';
console.log(result + '克莱托指数:' +c);
</script>
3、要求用户输入一个四位数,将这个四位数的个,十,百,千位的数字单独输出来,并将他们的和求出来!
例:用户输入2045,输出结果为:个位:5,十位:4,百位:0,千位:2,和为:11
<script>
var a = prompt("请输入一个四位数的正整数");//给a赋予一个值
var b = parseInt(a/1000);//取整,即千位数
var c = parseInt(a/100);//取一个两位数的整数,是千位与百位
var d = c%10;//取余,即百位数
var e = a%100;//取一个两位数的余数,是十位与个位
var f = parseInt(e/10);//取整,即十位数
var g = a%10;//取余,即个位数
var h = g + f + d + b;//计算个位,十位,百位,千位的和
console.log('个位:' + g,'十位:' + f,'百位:' + d,'千位:' + b);
console.log('和为:' + h);
</script>
4、商场为员工提供了基本工资(3000元)、物价津贴及房租津贴,其中物价津贴为基本工资的40%,房租津贴为基本工资的25%。编程计算实领工资
<script>
var a = prompt('请输入您的基本工资');//将基本工资赋值给a
var b = a * 0.4;//计算物价津贴的值,并赋予b
var c = a * 0.25;//计算房租津贴的值,并赋予c
var result = a * (1 + 0.4 + 0.25);//计算实领工资
console.log('实领工资为:' + result);
</script>
关于一些JS的运算符的更多相关文章
- js基础——运算符
爱创课堂前端培训--js基础 运算符一.运算符 运算符(Operators,也翻译为操作符),是发起运算的最简单形式.分类:(运算符的分类仁者见智,本课程进行一下分类.)数学运算符(Arithmeti ...
- Js的运算符
JS的运算符 1.运算符的分类: a) 算数运算符 b) 字符串运算符 c) 赋值运算符 d) 比较运算符 e) 逻辑运算符 f) 位运算符 g) 其他运算符 2.算数运算符 + 加法运算符 - 减法 ...
- js 的概念和声明-js 的变量-js 的运算符和逻辑结构-js 的数组
js 的概念和声明Js的概念和声明:问题:在网页的发展历程中,发现网页不能对用户的数据进行自动校验,和提供一些特效造成用户体验极差解决:使用JavaScript作用:可以让网页和用户之间进行直接简单的 ...
- JS总结 运算符 条件语句
算术运算符+-*/ 与数学计算一致,配合()号进行各种计算 另外,+号还可以达到连接的作用.例如: var a = 15; alert("a的值等于"+a); 前后增减量运算符: ...
- JS基础-运算符-函数
1.运算符 1.赋值运算符和扩展运算符 1.赋值运算符 = 2.扩展运算符 +=,-=,*=,/=,%=,^=.... ex: a=a+b;--> ...
- JS 比较运算符 逻辑运算符
逻辑运算符 三元运算符 摘自:http://www.w3school.com.cn/js/js_comparisons.asp
- Javascript 基础学习(五)js 的运算符
通过运算符可以对一个或多个值进行运算,并且一定有运算结果返回 算数运算符 算数运算符包括相加(+).相减(-).相乘(*).相除(/).取模(%).任何值与字符串相加都会转换为字符串,做的是字符串 ...
- JS笔记 运算符 函数
1.运算符 1.位运算符 将数字转换为二进制后进行运算 只做整数运算,如果是小数的话,则去掉小数位再运算 2.位运算 1.按位 与:& 语法:a&b; 2.按位 或| 语法:a|b 任 ...
- JS逗号运算符的用法详解
逗号运算符的用法详解 注意: 一.由于目前正在功读JavaScript技术,所以这里拿JavaScript为例.你可以自己在PHP中试试. 二.JavaScript语法比较复杂,因此拿JavaScri ...
- js部分---运算符,if分支语句,for循环;switch case 的用法;
------------------------------------------运算符---------------------------------------------------- *数 ...
随机推荐
- Python: 根据利润计算奖金
简述:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%: 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%: 20万到40 ...
- opencv_traincascade级联训练人脸数据
正负样本格式: 正样本 灰度化 24*24 2000张 负样本 灰度化 50*50 1000张 训练过程 第一步:dir /b >pos.txt 以及dir /b >neg.txt ...
- Smarty 获取当前日期时间和格式化日期时间
在Smarty 中获取当前日期时间和格式化日期时间与PHP中有些不同的地方,这里就为您详细介绍: 首先是获取当前的日期时间:在PHP中我们会使用date函数来获取当前的时间,实例代码如下:date(& ...
- eclipse 创建web项目,新建servelet实例
参考: http://www.phperz.com/article/14/1127/38108.html http://jingyan.baidu.com/article/c843ea0b9aa914 ...
- smart_pointer example
#pragma oncetemplate<typename T>class smart_pointer{private: T* m_pRawPointer;public: smart_po ...
- linux挂载iscsi出现的问题
挂载的时候我们可以使用永久挂载但是这里我们就需要注意了正常的永久挂载可能会导致系统起不来因为这里我们使用的是服务端的硬盘为网络设备而开机的读取中 会先读取/etc/fstab下的内容 之后再读取网络的 ...
- clientdataset的使用
clientdataset的使用(一) Delphi做为一个快速应用开发工具,深受程序员的喜爱.其强大的组件功能,让程序员能够轻松. 高效地完成常见的界面开发.数据库应用等功能.然而,帮助的相对缺 ...
- mysql查看数据库所占用的空间
查询某个表所占用的磁盘空间大小: SELECT CONCAT(ROUND(SUM(data_length/1024/1024),2),'MB') AS data_length_MB, CONCAT(R ...
- The input file should be UTF8 without a byte-order-mark(BOM)
byte-order-mark = (BOM) 在unicode诸编码中,字节顺序标记-BOM被用于标记编码高低位的顺序. .BOM是一个特殊的unicode字符.早期标准定义其为“零长度.非断行的空 ...
- 我是如何提高工作效率的-工具篇(一)-Clover
痛点: 还在为资源管理器窗口切来切去烦恼吗? 效果图: 实现工具:Clover 放个链接 链接:https://pan.baidu.com/s/1UiUQZtE99fMNDe1f2gOnlg 提取 ...