关于一些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 的用法;
------------------------------------------运算符---------------------------------------------------- *数 ...
随机推荐
- Canvas-基本用法
Canvas教程-MDN HTML 5 Canvas 参考手册 <canvas>是一个可以使用脚本(通常为JavaScript)来绘制图形的 HTML 元素.例如,它可以用于绘制图表.制作 ...
- onNewIntent
当Activity不是Standard模式,并且被复用的时候,会触发onNewIntent(Intent intent) 这个方法,一般用来获取新的Intent传递的数据 我们一般会把MainAcit ...
- 启动elasticsearch的时候报出Exception in thread "main" SettingsException[Failed to load settings from /usr/local/elasticsearch/config/elasticsearch.yml]; nested: MarkedYAMLException[while scanning a simple ke
故障现象: [elasticsearch@tiantianml- ~]$ /usr/local/elasticsearch/bin/elasticsearch Exception in thread ...
- 使用badusb“烧鹅”制作“百度U盘”
HID攻击:USB HID攻击技术是一种利用USB接口伪造用户击键行为实施是攻击的方式.通过恶意USB HID设备连接主机后发送伪造的按键命令,篡改系统设置.运行恶意功能.这种技术区别于传统的USB攻 ...
- mfc递归删除文件夹
BOOL myDeleteDirectory(CString directory_path) //删除一个文件夹下的所有内容 { BOOL ret=TRUE; CFileFind finder; CS ...
- List 的删除
List 不要在循环中使用remove 删除.可以新加一个List ,把符合条件的元素加入到这个list 中,然后调用removeAll . 比如:(增强for 循环需要判断 list 是否是 nul ...
- 【UI】数据表格设计
https://www.smashingmagazine.com/2019/02/complex-web-tables/ https://www.smashingmagazine.com/2019/0 ...
- Vscode中打开、新建内部终端快捷键方法
设置->键盘快捷方式->搜索集成终端->切换集成终端/新建集成终端 Windows 电脑 组合键 说明 Ctrl + ~ 打开默认终端 Ctrl + Shift + ~ 新建新的终端 ...
- Win10系统,Jmeter 字体调整方法
找到jmeter所在目录--->bin--->jmeter.properties, 1.搜索jsyntaxtextarea.font.size,去掉#,把14改成更大的数字 2.修改右侧参 ...
- MATLAB 2016b + CUDA10.1 +MatConvNet beta25 安装踩坑记
最近因为目标跟踪实验需要得安装MatConvNet,由于已经是2019年了大家的软件版本肯定不可能是像官网要求的那样,所以安装自然而然就会碰到很多问题.在这一过程中我参考了网上很多博主的经验,有些确实 ...