第一篇、javascript变量和循环
一、代码存放位置
理论上放在body和head中都可以,但是推荐放在body代码块底部,因为Html代码是从上到下执行,如果Head中的js代码耗时严重,就会导致用户长时间无法看到页面,如果放置在body代码块底部,那么即使js代码耗时严重,也不会影响用户看到页面效果,只是js实现特效慢而已。
Js代码可以放在一个单独的文件中,然后通过 <script src="common.js" type="text/javascript"></script>可以将其导入进来,或者直接在html文件中直接书写代码,如下面所示,其中两种方式的 type都可以不用写,因为浏览器默认的便是javascript
方式一:type="text/javascript"可以省略
<head>
<meta charset='utf8'>
<title></title>
<script src='common.js'></script>
</head> 方式二:type="text/javascript"可以省略
<body>
<script> Js代码内容..... </script>
</body>
二、变量
JavaScript中变量的声明是一个非常容易出错的点,
局部变量:函数内局部变量必须一个 var 开头,函数内如果未使用var也是定义局部变量,所以为了不搞混,局部变量var开头,重新赋值也要用var
全局变量:函数外则默认表示声明的是全局变量。
<script>
name = 'seven'; // 不加var,全局变量 function func(){
var age = ; // 加var,局部变量
age = ; // 对局部变量重新赋值,所以定义局部变量也好,修改局部变量也好都加上var就不会乱了
var age = ;
name = "tomcat"; // 对全局变量重新赋值
gender = "女"; // 这是局部变量,别乱了,所以定义局部变量使用var alert(age);
alert(name);
alert(gender);
}
alert(name);
func()
</script>
JavaScript中代码注释:
- 单行 //
- 多行 /* */
注意:此注释仅在Script块中生效。
三、循环和异常
一、if 循环
用于判定相等或者不等的情形
严格来说if循环必须是一个boolean表达式:但是javascriot是弱类型语言,可以把其他类型的值自动转化为Boolean
自动转化为false:、NaN、 “(空字符串)”、undefined
自动转化为true:、-、infinity、字符串、‘’、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<button onclick="isHealthy()">体重健康测试</button>
</head>
<body>
<script>
function isHealthy(){
var weight=window.prompt("请输入体重:");
var height=window.prompt("请输入身高:");
var score=weight/(height*height);
if(score>){
console.log("你有点胖了");
}else if(score>){
document.write("体重均匀");
}else{
console.log("你太瘦了");
}
}
</script> </body>
</html>
二、swich-case语句
语法:
swich:
case:
语句一;
case:
语句二;
default:
语句三;
当上面的判断要第一个执行的时候,语句二语句三也会继续执行,所以要用break中断循环
swich-case的优点:
1、常常和break语句结合使用实现分支的功能
2、结构更清晰、效率更高
缺点:
只能用于指定变量相等某个范围内的某个特定的值
三、while循环
循环:就是一遍又一遍的重复执行相同或者相似的代码
循环结构的二个要素:
1) 循环体—要执行的相同或者相似的语句
2) 循环条件—重复执行的次数,或者继续执行循环的条件
方式一、
while循环的语法格式:
while(boolean){
循环体语句;
}
含义:如果boolean表达式为true,则执行一遍循环体中的语句;然后再判定一次boolean表达好似,如果为true,则再次执行一遍循环体中的语句…直到boolean表达式的值为false则循环结束
方式二、
do {
可执行语句;
}while(boolean表达式);
while的两种循环方式
注意点:
break只能用在while和swich这两种语句当中
四、for循环
for循环支持两种遍历方式
方式一:
var names = ["alex", "tony", "rain"]; for(var i=;i<names.length;i++){
console.log(i);
console.log(names[i]);
} 方式二:
var names = ["alex", "tony", "rain"]; for(var index in names){
console.log(index);
console.log(names[index]);
}
for循环执行过程:
、 计算表达式1的值
、 计算表达式2(boolean表达式)的值,如果为true则执行循环体,否则退出循环
、 执行循环体
、 执行表达式3
、 计算表达式2如果为true则执行循环体,否则退出循环
、 如此循环往复,直到表达式2的值为false
countinue:关键字只能用于循环中。
五、异常处理
try {
//这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行
}
catch (e) {
// 如果try代码块中抛出了异常,catch代码块中的代码就会被执行。
//e是一个局部变量,用来指向Error对象或者其他抛出的对象
}
finally {
//无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行。
}
四、补充
1、输入的内容直接打印到浏览器页面上面
document.write(“这个内容会打印到浏览器页面上面”)
2、在解释器中打印输出
consolo.log();
3、和用户交互
window.prompt(“来输入内容”);
4、弹出警告框
window.alert("里面内容随便写");
第一篇、javascript变量和循环的更多相关文章
- R语言学习 第一篇:变量和向量
R是向量化的语言,最突出的特点是对向量的运算不需要显式编写循环语句,它会自动地应用于向量的每一个元素.对象是R中存储数据的数据结构,存储在内存中,通过名称或符号访问.对象的名称由大小写字母.数字0-9 ...
- JavaScript 学习之第一篇JavaScript的数据类型(2016/8/29 晚 23:12)
1. JavaScript的数据类型 JavaScript 里面有6中数据类型 Boolean String Number Undefined Null Object object(对象)类型包含了数 ...
- cocos2d-x学习记录第一篇-环境变量配置
最近准备学习cocos2d-x,之前一直是做iOS开发的,算是零基础开始学习吧. (此条后来修改,不用配置下面这些东西,下载一个cocosstudio就可以了,直接在里边就创建工程了) 本人用Mac电 ...
- Scala语言笔记 - 第一篇
目录 Scala语言笔记 - 第一篇 1 基本类型和循环的使用 2 String相关 3 模式匹配相关 4 class相关 5 函数调用相关 Scala语言笔记 - 第一篇 最近研究了下scala ...
- 深入理解javascript函数系列第一篇——函数概述
× 目录 [1]定义 [2]返回值 [3]调用 前面的话 函数对任何一门语言来说都是一个核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即 ...
- 深入理解javascript函数系列第一篇
前面的话 函数对任何一门语言来说都是核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即对象,程序可以随意操控它们.函数可以嵌套在其他函数中 ...
- 深入理解javascript对象系列第一篇——初识对象
× 目录 [1]定义 [2]创建 [3]组成[4]引用[5]方法 前面的话 javascript中的难点是函数.对象和继承,前面已经介绍过函数系列.从本系列开始介绍对象部分,本文是该系列的第一篇——初 ...
- 《javascript权威指南》读书笔记——第一篇
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...
- 深入理解javascript作用域系列第一篇——内部原理
× 目录 [1]编译 [2]执行 [3]查询[4]嵌套[5]异常[6]原理 前面的话 javascript拥有一套设计良好的规则来存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域.作用域 ...
随机推荐
- 属性字符串NSMutableAttributedString
要实现如下效果: NSString * mailString = @"mymail@126.com"; NSString * mailStringWithQuotes = [NSS ...
- vim命令行模式
1. 激活命令行模式 : 进入命令行模式 <Esc> 退出命令行模式 2. 常用命令 :p 打印 (:print) :e 读入文件 (:edit) :w 写入文件 (:write) :t ...
- tomcat 使用log4j进行日志切割
因为tomcat catalina.out日志不会自己主动切割, 一.日志切割所需包在附近中 1. 压缩包中有三个jar包: log4j-1.2.16.jar tomcat-juli ...
- 在oracle11g中配置多个DataGuard物理备机
>> from zhuhaiqing.info 主机配置 alter system set DB_UNIQUE_NAME='starboss' scope=spfile; alter sy ...
- SD--怎样增强是同一类出库单使用不同号码段
在现实的业务中,一个公司有多个销售组织,它们使用同一个出库类型,业务往往希望它们创建的出库单的号码採用不同号码范围.但在sap里出库单号码范围是在出库单类型里设置,也就是使用同样的出库单类型,也就使用 ...
- [译]GLUT教程 - 移动镜头3
Lighthouse3d.com >> GLUT Tutorial >> Input >> Moving the Camera III 上一节的示例中我们用键盘更改 ...
- JavaScript_DOM编程艺术第二版[阅]
前两年迫于项目的需要,只是拿来JQuery用到项目中,并没有实质上理解javascript(貌似其他人也是这么干的)~ 随着最近几年,得益于Nodejs, React, Vue等,javascript ...
- Weka学习之预处理连接MySql(二)
载入数据 (一)打开文件 (二) 打开url (三) 打开数据库 (四)从一些数据生成器(DataGenerators)中生成人造数据 这篇主要写(三)中的连接mySql 网上 ...
- PHP运行环境之IIS FastCGI 进程意外退出解决办法
本机做了系统,结果之前装好的APACHE环境什么的都没了,不想费事了,这次直接使用WIN8自带的IIS功能了,安装完毕后提示FastCGI 进程意外退出解决办法,这是由于某些加载库加载失败的原因,这里 ...
- DB2 中like的通配符以及escape关键字定义转义字符的使用
DB2 LIKE谓词查询语句中支持 百分号(%).下划线(_)的使用,不支持方括号([])(注:它会把方括号当成实际的值而非通配符),当我们需要在LIKE 查询条件中将百分号(%).下划线(_)作为实 ...