javascript每日必学之运算符


Posted in Javascript onFebruary 16, 2016

读者朋友们好,前面我已经大概的了解了Javascript的作用以及一些基本的函数声明与变量声明,今天我们就接着前面的内容讲解,我们就来看一下javscript的逻辑(正序,分支,循环)以及一些简单的运算符

下面我们就来讲一些简单的操作运算符

  • + 加号:1.用来计算两个数字相加之和,2.用来拼接两个字符串
  • - 减号:1.用来计算两个数字相减之差,2.用在一个数字前面来标识成一个负数
  • * 乘号:用来计算两具数字相乘之积
  • / 除号:用来计算被除数除以除数后,所得的商
  • % 取余:用来计算被除数除以除数后,所得的余数(这里计算是整除,将取得整除后的余数)
  • = 赋值:用来把一个值(可以是对象,函数,数字,字符串,布尔)赋值给一个变量

javascript每日必学之运算符

在这里,我们可以清楚地看到运算符把运算的的结果给显示了出来,加 减 乘 除 我就不用再赘述赘述,相信大家的计算能应该都比我好,因为我只是中学毕业而已,稍微要多说一点的就是取余运算,看到上面的例子 5%2 取余得1,是这样计算的,5÷ 2 = 2 …… 1 ,这个在小学二年级就应该看到过的计算吧,被除数 ÷ 除数 = 商…… 余数,这个余数就是取余操作的结果,还要就是昨天已经提及过的等于符号,就是用来赋值的 var temp = 值; 我们用var 关键字来声明变量,用 = 来给你赋值,值 的类型可以是对象,函数,数字,字符串,布尔;前面已经给大家说了,函数是什么,就是用function来声明的一个函数体,那就是函数,数字不用说吧,字符串,就用引号包含的一串字符串,布尔值,就是只有两个值的一种类型,true 和 false,没有第三种。

接一来我们来看一下各种值的样子吧

//这里我们给了一个空对象(null)
  var temp_1 = null;
  //这里我们给一个函数
  var temp_2 = function(){
   console.log("Write Something");
  };
  //这里我们给了一个字符串
  var temp_3 = "My name is MrDream";
  //这里我们给了一个boolean值
  var temp_4 = true;

这些基本操作,大家应该是一目了然,希望读者朋友看到这些基础的东西时候,现在不要着急,现在我们还处于入门介绍讲解阶段,所以这些基础的东西,大家必须要明白,到后面的文章,我还会讲更多的东西,不然,基础不打好,后面,我讲一些你们到时候觉得牛逼的东西时,你们如果只能拿去复制代码使用就没有意思,不能自主写出一些自己想要的的东西。

下面我们再来进一步理解一下运算符的小小升级后是什么样的?(注:目前,我只说一些基本的运算符,还有一些特殊的运算符,后面我会在一些应用中讲解,到时候理解才更深刻)

  • += 加等:先把两个操作对象进行相加运算,然后再把相加后的值赋值给第一个操作对象
  • -= 减等:先把两个操作对象进行相减运算,然后再把相加后的值赋值给第一个操作对象
  • *= 乘等:先把两个操作对象进行相乘运算,然后再把相加后的值赋值给第一个操作对象
  • /= 除等:先把两个操作对象进行相除运算,然后再把相加后的值赋值给第一个操作对象
  • %= 余等:先把两个操作对象进行取余运算,然后再把相加后的值赋值给第一个操作对象

javascript每日必学之运算符

再来一些与简单的比较判断运算符

  • == 等于:判断运算符两边的对象是否相等
  • === 绝对等于:判断运算符两边的对象是否绝对相等
  • !== 绝对不等于:判断运算符两边的对象是否绝对不相等
  • != 不等于:判断运算符两边的对象是否不相等
  • || 或者(或):首先判断运算符左右两边的对象是否为"非空对象或者非未定义对象",如果两个都是,就返回右为值,如果有一个值不是,就返回不是那个值
  • && 并且(与):首先判断运算符左右两边的对象是否为"非空对象或者非未定义对象",如果两都不是,就返回右边值,如果有一个值是,就返回是的那个值,如果两个都是,就返回左边那个。
  • ! 取反(非):把一个值转换成布尔值后,再取反

(注:这里提及到的 或者,并且,取反 运算符,我是用大家一般的理解逻辑去讲的,其实内部操作,是涉及到二进制的 或 与 非 运算产生的结果,我们面说到二进制的时候再详说)下面我们看一些示例

javascript每日必学之运算符

下面就讲一点或与非的操作,理解上就多了一点难度了

javascript每日必学之运算符

看图说话,A处,因为运算符左边未定义对象,所以返回 右边的值;B处,因为左边是空对象,所以返回右边的值;C处,因为左边有实在的值 数字123,所以返回123;D处因为左边是实在的值 数字-1,所以返回左边的值。补充一条:数0也是个特殊值,如果左边是0,那么就会返回右为的值。

小结一下或操作符的作用:就用来查看运算符左右两边是否是 未定义值,空值,0,false,如果左边是这些值,就返回右边的值,如果左边不是这些类型的值,就返回左边的值。

接着与操作

javascript每日必学之运算符

仍然看图说话,A处:左右分别为未定义对象和空对象,返回左边的值;B处左边是空对象,所以返回左边;C处:右边是未定义对象,所以返回右边值;D处:与C处同理;E处:两都是非空对象,左边的布尔值是true,所以返回右边;F处与E处同理;G处:因为左边是0,与未定义对象,空对象以及false同级,所以返回左边值。

最后一个就是非操作

javascript每日必学之运算符

继续看图说话,A处:操作是0 false null 未定义之类的值,取返,就获得了布尔值的true;B处:都是对实实在在的值取反操作,获得的主是布尔值false。我们可以总结出,取反获得的就是布尔值,不实际的值取反就是正确,实际的值取反就是错误。

好了,今天就写到这里,总结一下,今天,其实也就讲了一些很基本的运算符,但是运算符的个数有点多,所以还是写了这么对,才将其表述完,还有一些特殊的操作符,我们以后再说,只要每天进步一点点,成就一代大神也不是梦。

Javascript 相关文章推荐
DD_belatedPNG,IE6下PNG透明解决方案(国外)
Dec 06 Javascript
jquery教程ajax请求json数据示例
Jan 13 Javascript
jquery自定义下拉列表示例
Apr 25 Javascript
JS 作用域与作用域链详解
Apr 07 Javascript
Angular中$compile源码分析
Jan 28 Javascript
深入理解Vue.js源码之事件机制
Sep 27 Javascript
jQuery实现监听下拉框选中内容发生改变操作示例
Jul 13 jQuery
详解Angular6 热加载配置方案
Aug 18 Javascript
微信小程序实现留言板
Oct 31 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
Dec 03 Javascript
JS实现从对象获取对象中单个键值的方法示例
Jun 05 Javascript
原生js实现密码强度验证功能
Mar 18 Javascript
解析Node.js基于模块和包的代码部署方式
Feb 16 #Javascript
javascript每日必学之基础入门
Feb 16 #Javascript
快速掌握Node.js环境的安装与运行方法
Feb 16 #Javascript
js实现异步循环实现代码
Feb 16 #Javascript
JavaScript实现跑马灯抽奖活动实例代码解析与优化(二)
Feb 16 #Javascript
JavaScript实现跑马灯抽奖活动实例代码解析与优化(一)
Feb 16 #Javascript
javascript HTML+CSS实现经典橙色导航菜单
Feb 16 #Javascript
You might like
关于PHP模板Smarty的初级使用方法以及心得分享
2013/06/21 PHP
php中Session的生成机制、回收机制和存储机制探究
2014/08/19 PHP
PHP实现的通过参数生成MYSQL语句类完整实例
2016/04/11 PHP
php arsort 数组降序排序详细介绍
2016/11/17 PHP
jquery post方式传递多个参数值后台以数组的方式进行接收
2013/01/11 Javascript
Javascript实现滚动图片新闻的实例代码
2013/11/27 Javascript
Jquery插件编写简明教程
2014/03/25 Javascript
JavaScript支持的最大递归调用次数分析
2014/06/24 Javascript
JQuery Mobile 弹出式登录框的实现方法
2016/05/28 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
详解Vue开发微信H5微信分享签名失败问题解决方案
2018/08/09 Javascript
微信小程序 网络通信实现详解
2019/07/23 Javascript
vue商城中商品“筛选器”功能的实现代码
2020/07/01 Javascript
uniapp电商小程序实现订单30分钟倒计时
2020/11/01 Javascript
[04:09]显微镜下的DOTA2第十二期—NaVi美如画的团战
2014/06/23 DOTA
[57:28]2018DOTA2亚洲邀请赛 4.6 淘汰赛 TNC vs Liquid 第一场
2018/04/10 DOTA
使用beaker让Facebook的Bottle框架支持session功能
2015/04/23 Python
python 简单的多线程链接实现代码
2016/08/28 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
python实战教程之自动扫雷
2018/07/13 Python
python实现自动登录后台管理系统
2018/10/18 Python
使用matplotlib中scatter方法画散点图
2019/03/19 Python
Python HTML解析模块HTMLParser用法分析【爬虫工具】
2019/04/05 Python
python打包成so文件过程解析
2019/09/28 Python
Python matplotlib修改默认字体的操作
2020/03/05 Python
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
类的返射机制中的包及核心类
2016/09/12 面试题
业务主管岗位职责范本
2013/12/25 职场文书
2014乡镇“三八”国际劳动妇女节活动总结
2014/03/01 职场文书
股东合作协议书范本
2014/04/14 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
单身申明具结书
2015/02/26 职场文书
浅谈Python项目的服务器部署
2021/04/25 Python
Go获取两个时区的时间差
2022/04/20 Golang