整理Javascript基础语法学习笔记


Posted in Javascript onNovember 29, 2015

1、什么是变量
字面意思:变量是可变的量;
编程角度:变量是用于存储某种/某些数值的存储器。我们可以把变量看做一个盒子,盒子用来存放物品,物品可以是衣服、玩具、水果...等。 

2、表达出你的想法(表达式)
表达式与数学中的定义相似,表达式是指具有一定的值、用操作符把常数和变量连接起来的代数式。一个表达式可以包含常数或变量。

 整理Javascript基础语法学习笔记

字符串表达式:"I" + "love" + "you" + mychar  //编写串表达式,值为字符串。

数值表达式:num + 5*32 + 2.5    //编写数值表达式,值为数值。

布尔表达式:2>3     num==5      num<60     //编写布尔值true或flase的表达式

小明有10元钱,买了一个本,花了5元,小红说:"你剩下的钱加上我的6元钱,就可以买个铅笔盒了。

<script type="text/javascript">
  var num1 = 10-5;//计算小明剩下多少钱
  var num2 = num1+6;//小红花多少钱买铅笔盒
 document.write("小明还剩:"+num1+"元"+"<br>");
 document.write("小红花:"+num2+"元买个铅笔盒");
 </script>

3、+号操作符
操作符是用于在JavaScript中指定一定动作的符号。
(1)操作符

sun = numa + numb;

其中“=”和“+”都是操作符。

算数操作符(+、-、*、/等)

比较操作符(<、>、>=、<=等)

逻辑操作符(&&、||、!)。
注意:“=”操作符是赋值,不是等于。
(2)“+”操作符
在JavaScript中,“+”不只是代表加法,还可以连接两个字符串。

mystring = "Java" + "Script";//mystring的值"JavaScript"这个字符串

4、自加一,自减一 ( ++和- -)
算术操作符除了(+、-、*、/)外,还有两个非常常用的操作符,自加一“++”;自减一“--”。首先来看一个例子:

mynum = 10;
mynum++; //mynum的值变为11
mynum--; //mynum的值又变回10

上面的例子中,mynum++使mynum值在原基础上增加1,mynum--使mynum在原基础上减去1,其实也可以写成:

mynum = mynum + 1;//等同于mynum++
 mynum = mynum - 1;//等同于mynum--

5、比较操作符
我们先来做道数学题,数学考试成绩中,小明考了90分,小红考了95分,问谁考的分数高?
答: 因为“95 > 90”,所以小红考试成绩高。
其中大于号">" 就是比较操作符,小红考试成绩和小明考试成绩就是操作数,并且是两个操作数。
也就是说两个操作数通过比较操作符进行比较,得到值为真(true)和假(false)。
操作符的含义:
< 小于
> 大于
<= 小于或等于
>= 大于或等于
== 等于
!= 不等于

var a = 5;//定义a变量,赋值为5
 var b = 9; //定义b变量,赋值为9
 document.write (a<b); //a小于b的值吗? 结果是真(true)
 document.write (a>=b); //a大于或等于b的值吗? 结果是假(false)
 document.write (a!=b); //a不等于b的值吗? 结果是真(true)
 document.write (a==b); //a等于b的值吗? 结果是假(false)

 相等操作符==并不表示严格相等。例如:比较false与一个空字符串会得到什么结果?

var a = false;
 var b = "";
 if(a == b){
  alert("a equals b");
 }
 //这个条件语句的求值结果是true。因为相等操作符==认为空字符串于false的含义相同。要进行严格比较,就要使用另一种等号(===)。这个全等操作符会执行严格的比较,不仅比较值,而且会比较变量的类型:
 var a = false;
 var b = "";
 if (a === b){
  alert("a equals b");
 }

这次,条件表达的求值结果就是false了。因为即使认为false与空字符串具有相同的含义,但Boolean和String可不是一种类型。

对于不等操作符!=也是如此。如果想比较严格的不相等就要使用!==。

6、逻辑与操作符
数学里"a>b",JavaScript里还表示"a>b";数学中的"b大于a,b小于c"是"a<b<c",JavaScript中用&&表示。
b>a && b<c //"&&"是并且的意思,读法“b大于a”并且“b小于c”
好比我们参加高考时,在进入考场前,必须出示准考证和身份证,两者缺一不可,否则不能参加考试,表示如下:

if(有准考证 &&有身份证) 
 {
 进行考场考试
 }

“&&”是逻辑与操作符,只有“&&”两边值同时满足(同时为真),整个表达式值才为真。
逻辑与操作符值表:

整理Javascript基础语法学习笔记

注意: 如果A为假,A && B为假,不会在执行B; 反之,如果A为真,要由 B 的值来决定 A && B 的值。

7、我或你都可以 (逻辑或操作符)
"||"逻辑或操作符,相当于生活中的“或者”,当两个条件中有任一个条件满足,“逻辑或”的运算结果就为“真”
逻辑或操作符值表:

 整理Javascript基础语法学习笔记

注意: 如果A为真,A || B为真,不会在执行B; 反之,如果A为假,要由 B 的值来决定 A || B 的值

<script type="text/javascript">
 var numa,numb,jq1;
 numa=50;
 numb=55;
 jq1= numa>numb||numa==numb;
 document.write("jq1的值是:"+jq1+"<br>")
</script>

8、是非颠倒(逻辑非操作符)
"!"是逻辑非操作符,也就是"不是"的意思,非真即假,非假即真。
逻辑非操作符值表:

整理Javascript基础语法学习笔记

例:

var a=3;
var b=5;
var c;
c=!(b>a); // b>a值是true,! (b>a)值是false
c=!(b<a); // b<a值是false, ! (b<a)值是true
<script type="text/javascript">
  var numa,numb,jq1;
  numa=60;
  numb=70;
  jq1=!(numa<numb);
  document.write("jq1的值是:"+jq1+"<br>")//输出值jq1的值是:false
</script>

保持先后顺序(操作符优先级)
例一:

var numa=3;

 var numb=6
jq= numa + 30 / 2 - numb * 3; // 结果为0

例二:

var numa=3;
var numb=6
jq= ((numa + 30) / (2 - numb)) * 3; //结果是-24.75

操作符之间的优先级(高到低):
算术操作符 → 比较操作符 → 逻辑操作符 → "="赋值符号
如果同级的运算是按从左到右次序进行,多层括号由里向外。

var numa=3;
 var numb=6;
 jq= numa + 30 >10 && numb * 3<2; //结果为false

 <script type="text/javascript">
  var numa,numb,jq1;
  numa=5;
  numb=2;
  jq1=numa + 30 >10 && numb * 3<20;
  jq2=((numa + 30) / (7-numb)) * 3

  document.write("jq1的值是:"+jq1+"<br>");//jq1的值是:true
 document.write("jq2的值是:"+jq2);//jq2的值是:21
</script>

<script type="text/javascript">
  var a,b,sum;
  var a = 5;
  var b = 100%7; 
  sum = a > b && a*b > 0 ;
  document.write( "我认为 a 的值是:" + 5 + " b的值是:" + 2 + "sum 的值是:" + true+"<br/>");
  document.write( "答案是,第一轮计算后,a 为:"+ a +";b为:"+b +";第一次计算sum为:"+ sum +"<br/>");
 
  sum = ( (++a) + 3 ) / (2 - (--b) ) * 3; 
  document.write( "再一次计算后,我认为 a 的值是:" + 6 + " b的值是:" + 1 + "sum 的值是:" + 27 +"<br/>"); 
  document.write( "答案是,第二轮计算后,a 为:" + a + ";b为:" + b +";第二次计算sum为:"+ sum +",sum的类型也发生变化了。");
</script>

 以上就是关于Javascript基础语法的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
客户端静态页面玩分页
Jun 26 Javascript
JavaScript 函数replace深入了解
Mar 14 Javascript
JS模拟自动点击的简单实例
Aug 08 Javascript
JS实现切换标签页效果实例代码
Nov 01 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
Nov 05 Javascript
浅析Javascript使用include/require
Nov 13 Javascript
一个不错的字符串转码解码函数(自写)
Jul 31 Javascript
node.js中的http.response.getHeader方法使用说明
Dec 14 Javascript
javascript实现图片自动和可控的轮播切换特效
Apr 13 Javascript
Jquery动态添加输入框的方法
May 29 Javascript
JavaScript中String对象的方法介绍
Jan 04 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
Sep 15 Javascript
Jquery操作Ajax方法小结
Nov 29 #Javascript
jquery+php实现滚动的数字特效
Nov 29 #Javascript
MVC Ajax Helper或Jquery异步加载部分视图
Nov 29 #Javascript
Javascript闭包实例详解
Nov 29 #Javascript
jQuery实现图片上传和裁剪插件Croppie
Nov 29 #Javascript
javascript高级编程之函数表达式 递归和闭包函数
Nov 29 #Javascript
javascript实现拖动元素交换位置
Nov 29 #Javascript
You might like
php 字符转义 注意事项
2009/05/27 PHP
PHP冒泡算法详解(递归实现)
2014/11/10 PHP
php中str_pad()函数用法分析
2017/03/28 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
javascript下数值型比较难点说明
2010/06/07 Javascript
根据一段代码浅谈Javascript闭包
2010/12/14 Javascript
javascript动态加载二
2012/08/22 Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
2014/12/19 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
2016/09/29 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
详解vue表单——小白速看
2018/04/08 Javascript
浅谈JS对象添加getter与setter的5种方法
2018/06/09 Javascript
element ui table(表格)实现点击一行展开功能
2018/12/04 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
2020/11/19 Vue.js
[04:01]2014DOTA2国际邀请赛 TITAN告别Ohaiyo期望明年再战
2014/07/15 DOTA
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
python实现自动网页截图并裁剪图片
2018/07/30 Python
浅析python3字符串格式化format()函数的简单用法
2018/12/07 Python
Python列表list排列组合操作示例
2018/12/18 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
python过滤中英文标点符号的实例代码
2019/07/15 Python
运行Python编写的程序方法实例
2020/10/21 Python
html5 Canvas画图教程(3)—canvas出现1像素线条模糊不清的原因
2013/01/09 HTML / CSS
黄继光的英雄事迹材料
2014/02/13 职场文书
学校门卫岗位职责
2014/03/16 职场文书
工作证明范本(2篇)
2014/09/14 职场文书
处级领导干部四风问题自我剖析材料
2014/09/29 职场文书
银行竞聘报告范文
2014/11/06 职场文书
小学教师年度个人总结
2015/02/05 职场文书
不服劳动仲裁起诉书
2015/05/20 职场文书
民事答辩状格式范文
2015/05/21 职场文书
白银帝国观后感
2015/06/17 职场文书
python 安全地删除列表元素的方法
2022/03/16 Python
详解apache编译安装httpd-2.4.54及三种风格的init程序特点和区别
2022/07/15 Servers