一、概念

  

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js的基本语法2</title>
<script type="text/javascript">
/*1、进制转换 16进制0x开头 如0xff=255(十进制); 8进制是0开头 070=56(十进制)
* 2进制0b开头 0b10=2(十进制) 兼容性不好
* 像“070”这样的字符串,有些浏览器会当八进制有些当十进制解析,所以可以在parseInt传参数,指定进制的类型
*2、将其他数据类型转成布尔值。
* 数字-->布尔 0和null是false,其他都是(正、负数)true
* 字符串-->布尔 空串是false 其余都是true
* null和undefined、object -->布尔 都是true
*/
var a="070";
//console.log(parseInt(a,8));//这里第2个参数的8就是让浏览器指定8进制解析
var b=123;
//console.log(Boolean(a)); /*运算符(如typeof 获取值得类型) 通过对一个或多个值进行运算,并返回获取运算结果
* 1、typeof 会将值的类型以string 字符串的形式返回 如果typeof(34) 的返回类型就是string
* 2、+ - * / 加减乘除 %取余 不改变返回值类型 对于非number类型的自动转存number类型后再运算
* 【注】两个字符串相加时或其他任何类型(先转成字符串类型)加字符串类型时 “+” 做连接符
* 利用让任意数据加空串也可将其他数据类型转成字符串类型 如:var a=123+"";
* 是从左到右计算的 1+2+"3" 输出 33; "1"+2+3 输出 123
* 【注】100-"1"输出99 除了+可能做连接符 其余的都是把其他类型转成number类型的数
* 10/3的结果不是Java中3 而是就算出3.33333.... (大约16位)
*
* 3、一元运算符
* + -跟数学中一样 对于其他类型先转成数字类型 如var a= +"18" 输出18 数字类型的
* a++ 、 ++a都能自增1,结果一样变量a都能加1 a=a+1;
* a是变量 a++是个表达式,也有自己的值,单独使用时,功能一模一样,都是让a的值增加1;
* 不同的是与赋值号“=”一起使用时,y=++a表示先将a的值增加1后,再把值赋给y;
* y=a++表示先把a的值给y,a自己再增加1.
* a++: a++的值等于原变量的值(自增前的值) 等于先赋值后自增
* ++a: ++a的值等于原变量的新值(自增后的值) 等于先自增后赋值
*
* */
var x=10;
y=x++;
console.log("x= "+x);
console.log("y= "+y); var m=10;
n=++m;
console.log("m= "+m);
console.log("n= "+n); /*4、逻辑运算符
* 与(&&) 全真为真,“短路与”,前边是假就不会去判断后边的真假
* 或(||) 全假为假,“短路或”,前边是真就不会看后边的真假
* 非(!)
* 【注意】对于非布尔值会先将其转成布尔值再去运算,然后返回原值,不是true false
* (1)与(找假): 若第一个是真,必然返回第二个
* 若第一个为假,必然返回第一个
* (2)或(找真): 若第一个真,则直接返回第一个值
* 若第一个假,则直接返回第二个值
* 如var a=1&&2 输出2,不是true * */
var e=(1==2)&&(2==2);
console.log(e);
/*5、赋值运算符 =、+=(是一个运算符,中间不能加空格,如a=a+5简写成a+=5)、-=、*=、/=
* %=(如 a%=5等价于 a=a%5)
*
*6、关系运算符 > 、< 、>=、<=、==(恒等于) 、!=(不等于) ===(全等于) !==(不全等于)
* 如果关系成立返回真 不成立返回假 若是非数字则先转成数字再比较 总之,以数字为基准
* 如果两边都是字符串,不会转成数字,而是比较Unicode编码(逐位比较,类似于单词本)
* ---先比较第1位若有结果不会往下看 如字符串"11"<"5" 输出true 因为字符1的小于字符5的编码 不会看第2位
* ---若有第1位相同,比较第2位,以此类推
* ---比较字符串型的数字时要转型 如"1234"< +"5" 加号就相当于把字符串5转型成数值型
* 任何值和NaN(常见于字符串,字符串变成NaN)比较都是false
* var a=(5>3); 返回true
* "123"===123 类型不同直接返回假 不做类型转换 同理不全等直接返回真
*
* 7、输出Unicode 编码中的字符 前边加个\u后边跟4位16进制编码
* 在网页中显示使用 &#编码(这里的编码需要是10进制)
*
* 8、条件运算符(也叫三元运算符)
* ? : 先对条件表达式求值 若该值为真,执行语句1(前边),并返回执行结果;反之执行语句2
* max=(3>2)?3:2
* 9、优先级(跟数学中差不多) 记得加括号即可
* 优先级一样,则从左到右
*/
console.log("\u2620");
var max=(10>8)?10:8
console.log(max);
var a=12,b=15,c=8;
var max2=(a>b?a:b) > c?((a>b?a:b)):c;
console.log(max2) </script>
</head>
<body>
&#9760
</body>
</html>

[19/05/26-星期日] JavaScript_ 基本语法_运算符的更多相关文章

  1. Python基本语法_运算符详解

    目录 目录 前言 软件环境 身份运算符 算术运算符 比较运算符 位移运算符 自变运算符 位运算符 逻辑运算符 成员关系运算符 Python真值表 最后 前言 在前面的博文介绍了Python的数据结构之 ...

  2. http://www.blogjava.net/zhangchao/archive/2011/05/26/351051.html

    http://www.blogjava.net/zhangchao/archive/2011/05/26/351051.html

  3. PostSharp-5.0.26安装包_KeyGen发布_支持VS2017

    PostSharp-5.0.26安装包_KeyGen发布_支持VS2017 请低调使用. PostSharp安装及注册步骤截图.rar 请把浏览器主页设置为以下地址支持本人.https://www.d ...

  4. 项目Beta冲刺(团队)——05.26(4/7)

    项目Beta冲刺(团队)--05.26(4/7) 格式描述 课程名称:软件工程1916|W(福州大学) 作业要求:项目Beta冲刺(团队) 团队名称:为了交项目干杯 作业目标:记录Beta敏捷冲刺第4 ...

  5. 12--C++_运算符重载

    C++_运算符重载 什么是运算符的重载? 运算符与类结合,产生新的含义. 为什么要引入运算符重载? 作用:为了实现类的多态性(多态是指一个函数名有多种含义) 怎么实现运算符的重载? 方式:类的成员函数 ...

  6. C Primer Plus_第5章_运算符、表达式和语句_编程练习

    Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...

  7. Java 基本语法---Java运算符

    Java 基本语法---Java运算符 0. 概述 Java中的运算符主要分为以下几种: 算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 位运算符 其他运算符 1. 算术运算符 操作符 描 ...

  8. python基础语法(运算符及优先级)

    python基础语法(运算符及优先级) python语言支持的运算符类型 算数运算符 假设变量a为10,变量b为21 算数符 描述 实例 + 加-两个对象相加 a+b结果31 - 减-得到一个负数或者 ...

  9. Java基础语法(3)-运算符

    title: Java基础语法(3)-运算符 blog: CSDN data: Java学习路线及视频 1.算术运算符 算术运算符的注意问题 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1. ...

随机推荐

  1. GUI学习之三十—QCalendarWidget学习总结

    今天学习的是最后一个展示控件——QCalendarWidget 一.描述 QCalendarWidget提供了一个基于每月的日历控件,允许用户选择一个日期,还可以看一下里面的图示: QCalendar ...

  2. java tomcat虚拟目录的深入了解

    我们知道,Web网站中的内容(包括网页,图片,音频文件等)一般都存放在App的目录下.但随着网站内容的不断丰富,用户需要把不同层次的内容组织成网站的子目录.我们通常的做法是在网站主目录下新建子目录,并 ...

  3. Linux下升级安装Python-3.6.9版本

    1.操作系统信息  (1)cat /etc/redhat-releas (2)Red Hat Enterprise Linux Server release 6.0 (Santiago) 2.安装开发 ...

  4. css3 宽度百分比减去固定宽度 无效问题

    一定要注意中间横线的间距才有效果 正确 width: calc(50% - 10px); 错误 width:calc(50%-10px);

  5. Task5.PyTorch实现L1,L2正则化以及Dropout

    1.了解知道Dropout原理 深度学习网路中,参数多,可能出现过拟合及费时问题.为了解决这一问题,通过实验,在2012年,Hinton在其论文<Improving neural network ...

  6. sqlserver 2012 中的 sysobjects

    sysobjects 表  在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行

  7. Codeforces 864E - Fire(dp)

    原题连接:http://codeforces.com/problemset/problem/864/E 题意:一个人想从大火中带走一些东西.每次他只能带一个,耗时ti ,价值为pi, 当总时间超过di ...

  8. [CF1188B]Count Pairs 题解

    前言 这道题目是道好题. 第一次div-2进前100,我太弱了. 题解 公式推导 我们观察这个式子. \[(a_i+a_j)(a_i^2+a_j^2)\equiv k \mod p\] 感觉少了点什么 ...

  9. 给网页头部标题加logo

    现在在写公司的官网,需要在网页的头部加logo,没有加的时候是这样的 那么,现在只要一步,就可以了,加上一行代码 <link rel="icon" href="图标 ...

  10. BZOJ 3329: Xorequ(数位dp+递推)

    传送门 解题思路 可以把原式移项得\(x\)^\(2x\)=\(3x\),而\(x+2x=3x\),说明\(x\)二进制下不能有两个连续的\(1\).那么第一问就是一个简单的数位\(dp\),第二问考 ...