JavaScript进阶(一)
|
OK接下来,我们再次梳理一遍js并且提高一个等级。
众所周知,web前端开发者需要了解html和css,会只用html和css创建一个漂亮的页
面,但是这肯定是不够的,因为它只是一个静态的页面,我们还需要用JavaScript
增加它的行为,为网页添加动态效果。
首先,JavaScript能做什么?
1.增强页面动态效果(如:下拉菜单,图片轮播,信息滚动等)
2.实现页面与用户之间的实时,动态交互(如:用户注册,登录验证等)
JavaScript进阶篇章能学习到什么呢?
在JavaScript入门篇中,学了如何插入js,输出内容以及简单的dom操作,JavaScript
进阶能让我们进一步了解js的变量,数组,函数,语法,对象,事件,dom操作,制作
简单的网页动态效果。
首先,什么是变量?从字面上看,变量是可以变的量。从编程角度来看,变量是用
于存储某种/某些数值的存储器。我们可以把变量看做一个盒子,盒子用来存放物品
物品可以是衣服,玩具,水果...等。
然后为了区分这些盒子,可以用box1,box2等名称来代表不同的盒子,box1就是盒
子的名字(也是变量的名字)
我们给变量取名字的时候可以任意取,但是要遵循一些规范:
1.必须以字母,下划线或者美元符号开头,后面可以跟字母,下划线,美元符号或
数字。
如下:
正确:mysum _mychar $numal
错误:6num//开头不能是数字 %sum//开头不能用除了$或_以外的特殊符号
sum+num//开头中间不能用除了$或_以外特殊符号
2.变量名区分大小写,如A与a就是两个不同的变量
3.不允许使用JavaScript关键字或者保留字作为变量名
关键字
break else new var
case finally return void
catch for switch while
default if throw
delete in try
do instanceof typeof
保留字
abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger mplements protected volatile
double import public
我们是要用盒子装东西的,是不是先要找到盒子,那么在编程中,这个过程叫声明
变量,找盒子的动作,如何表示:
声明变量语法:var 变量名;
var就相当于找盒子的动作,在JavaScript中是关键字(即保留字),这个关键字
的作用是声明变量,并为“变量”准备位置(即内存)。
var mynum;//声明一个变量mynum
当然,我们可以一次找一个盒子,也可以一次找多个盒子,所以var还可以一次声明
多个变量,变量之间用","逗号隔开。
var num1,num2;
注意:变量也可以不声明,直接使用,但是为了规范,需要先声明,后使用。
我们把变量看做一个盒子,盒子用来存放物品,那如何在变量中存储内容呢?
我们使用“=”等号给变量存储内容,如:
var mynum=5;//声明变量mynum并赋值
这个语句怎么读呢?给变量mynum赋值,值为5.我们也可以这样写:
var mynum;//声明变量mynum
mynum=5;//给变量mynum赋值
注意:这里的“=”等号的作用是给变量赋值,不是等于号。
盒子可以装衣服,玩具,水果等等。其实,变量是无所不能的容器,你可以把任何
东西存储在变量里,如:数值,字符串,布尔值等。如:
var num1=123;//123是数值
var num2="一二三";//"一二三"是字符串
var num3=true;//布尔值true(真),false(假)
其中num1变量存储的内容是数值;num2变量存储的内容是字符串,字符串需要一对
引号""括起来,nume3变量存储的内容是布尔值(true,false)。
然后提到表达式。表达式与数学中的定义相似,表达式是指具有一定的值、用操作
符把常数和变量连接起来的代数式。一个表达式可以包含常数或变量。如:
num=num+1;
num就是变量,=是赋值,num+1就是表达式
操作符是用于在JavaScript中指定一定动作的符号。
(1)操作符
看下面这段代码:
sum=numa+numb;
其中"="和"+"都是操作符。
JavaScript中还有很多这样的操作符,例如,算数操作符,比较操作符,逻辑操作符
注意,注意,再注意!!!"="操作符是赋值,不是等于!
(2)"+"操作符
算术运算符主要用来完成类似加减乘除的工作,在JavaScript中,"+"不只代表加法,
还可以连接两个字符串,如:
mystring="Java"+"Script";//mystring的值"JavaScript"这个字符串
算术操作符除了加减乘除外,还有两个非常有用的操作符,自加一"++";自减一"--"
首先来看一个例子:
mynum=10;
mynum++;//mynum的值变成了11
mynum--;//mynum的值又变回了10
上面的例子中,mynum++使mynum值在原基础上增加1,mynum--使mynum在原基础上
减去1,其实也可以写成:
mynum=mynum+1;//等同于mynum++
mynum=mynum-1;//等同于mynum--
然后说到比较操作符。
我们先说道数学题,小明考试考了90分,小红考了95分,问谁的分数高?
答:因为95>90 所以小红考试成绩高
其中大于号>就是比较操作符。小红考试成绩和小明考试成绩就是操作数,并且是
两个操作数。
也就是说两个操作数通过比较操作符进行比较,得到值为真(true)和假(false)
在JavaScript中,这样的比较操作符有很多,这些操作符的含义如下:
操作符 描述
< 小于
> 大于
<= 小于或等于
>= 大于或等于
== 等于
!= 不等于
看看下面例子:
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)
ps:暂时有点事情,如果晚上有空闲的话,会继续更新的。
|
JavaScript进阶(一)的更多相关文章
- #笔记#JavaScript进阶篇一
#JavaScript进阶篇 http://www.imooc.com/learn/10 #认识DOM #window对象 浏览器窗口可视区域监测—— 在不同浏览器(PC)都实用的 JavaScrip ...
- 4、JavaScript进阶篇①——基础语法
一.认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂亮的页面,但这还不够,它只是静态页面 ...
- JavaScript 进阶(一)JS的"多线程"
这个系列的文章名为“JavaScript 进阶”,内容涉及JS中容易忽略但是很有用的,偏JS底层的,以及复杂项目中的JS的实践.主要来源于我几年的开发过程中遇到的问题.小弟第一次写博客,写的不好的地方 ...
- Javascript 进阶 面向对象编程 继承的一个样例
Javascript的难点就是面向对象编程,上一篇介绍了Javascript的两种继承方式:Javascript 进阶 继承.这篇使用一个样例来展示js怎样面向对象编程.以及怎样基于类实现继承. 1. ...
- JavaScript进阶(九)JS实现本地文件上传至阿里云服务器
JS实现本地文件上传至阿里云服务器 前言 在前面的博客< JavaScript进阶(八)JS实现图片预览并导入服务器功能>(点击查看详情)中,实现了JS将本地图片文件预览并上传至阿里云服务 ...
- JavaScript进阶(十一)JsJava2.0版本
JavaScript进阶(十一)JsJava2.0版本 2007年9月11日,JsJava团队发布了JsJava2.0版本,该版本不仅增加了许多新的类库,而且参照J2SE1.4,大量使用了类的继承和实 ...
- Javascript 进阶 面向对象编程 继承的一个例子
Javascript的难点就是面向对象编程,上一篇介绍了Javascript的两种继承方式:Javascript 进阶 继承,这篇使用一个例子来展示js如何面向对象编程,以及如何基于类实现继承. 1. ...
- javascript进阶笔记(2)
js是一门函数式语言,因为js的强大威力依赖于是否将其作为函数式语言进行使用.在js中,我们通常要大量使用函数式编程风格.函数式编程专注于:少而精.通常无副作用.将函数作为程序代码的基础构件块. 在函 ...
- JavaScript进阶系列07,鼠标事件
鼠标事件有Keydown, Keyup, Keypress,但Keypress与Keydown和Keyup不同,如果按ctrl, shift, caps lock......等修饰键,不会触发Keyp ...
随机推荐
- const 还是 static readonly
到底是 const 还是 static readonly 真的一样? const 和 static readonly 常在程序中用来声明常量,调用方法也没有什么不同,他们真的一样吗?我们可以做个试 ...
- last error : SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate veri
今天在用搜狐提供的邮件群发系统的sdk,做发送邮件的测试时,提示: last error : SSL certificate problem, verify that the CA cert is O ...
- win32多线程-异步过程调用(asynchronous Procedure Calls, APCs)
使用overlapped I/O并搭配event对象-----win32多线程-异步(asynchronous) I/O事例,会产生两个基础性问题. 第一个问题是,使用WaitForMultipleO ...
- [转]Hacking the iOS Spotlight
原文:http://theiostream.tumblr.com/post/36905860826/hacking-the-ios-spotlight 原文:http://theiostream.tu ...
- [RM 状态机详解2] RMAppAttempt状态机详解
摘要 本文详细描述RMAppAttempt状态机内的状态与其转换关系,分析的代码基于Apache社区Hadoop最新的2.3.0版本. RMAppAttempt状态机 在RM中,一个RMApp可能对于 ...
- windows phone 8环境搭建
windows phone 8 开发系列(一)环境搭建 一:前奏说明 本人一名普通的neter,对新玩意有点小兴趣,之前wp7出来的时候,折腾学习过点wp7开发,后来也没怎么用到(主要对微软抛弃w ...
- CSS中文字体的英文名称 – 前台开发必备
做什么用的?写过CSS的都晓得,一般用在font-family后面——为什么不用中文呢?有过一定开发经验的都晓得CSS里面用中文也是会乱码的,特别是没有中文字符集的浏览器,直接成了框框,用英文就可以解 ...
- cocos2d(CCSprite绑定不规则刚体与精灵一起移动)
对于不规则的精灵我们可以借助PhysicsEditor来制作shape , 对于地图可以使用Tiled软件制作瓷砖地图. 今天主要记录一下如何把CCSprite与不规则刚体进行绑定,然后一起移动 // ...
- URL 调度器(URL dispatcher)
URL 调度器(URL dispatcher) 在刚开始接触 django 的时候, 我们尝试着从各种入门文档中创建一个自己的 django 项目, 需要在 mysite.urls.py 中配置 UR ...
- mvc使用JsonResult返回Json数据
mvc使用JsonResult返回Json数据 controller 中定义以下方法: public JsonResult UpdateSingle(int id, string actionNa ...