您的位置:首页 > Web前端 > JavaScript

【js】day02_语法规范_标识符_数据类型_运算符_控制语句

2015-09-29 22:40 806 查看
【js】day02_语法规范_标识符_数据类型_运算符_控制语句

1.语法规范

1)基础语法

·由Unicode字符集编写

·注释

- 单行://

- 多行:/* */

·语句

- 表达式、关键字、运算符组成

- 大小写敏感

- 使用分号或者换行结束,一行中有多个语句不能省略分号

2.标识符与变量

1)标识符与关键字

·标识符

- 由不以数字开头的字母、数字、下划线(_)、美元符号($)组成

- 常用于表示函数、变量等名称

- 名称最好有明确的含义

- JavaScript语言中代表特定含义的词成为保留字,不允许程序定义为标识符

2)标准关键字



3)变量

·变量声明

- 使用关键字var声明变量,如var x,y;

·变量初始化

- 使用“=”赋值

-没有初始化的变量则自动取值为undefined

变量没有类型,统一用关键字var声明。变量所引用的数据是有类型的。

3.数据类型



2)String类型

·由Unicode字符、数字、标点符号组成的字符序列

·直接量首尾由一对单引号或双引号括起,其作用一样

·特殊字符需要转义符

转移符\,如\n,\\,\',\"

单引号和双引号嵌套时无需转义

3)Number类型

·不区分整型和浮点型数值

·所有数字都采用64位浮点格式存储,类似于double格式

·整型直接量

- 默认的整型直接量是10进制的

- 16进制数直接量前面加上0x,八进制前面加上0

浮点型直接量

- 默认的小数直接量使用小数点记录数据,如3.4

- 也可以使用指数记录数据,如4.3e23 = 4.3*10 23

4)Boolean类型

- 仅有两个值:true和false

- 可以自动转型为数值参与运算,运算时true=1,false=0

5)数据类型的隐式转换



6)数据类型转换函数

·toString

- 所有数据类型均可转换为String类型

·parseInt

- 强制转换成整数,如果不能转换,则返回NaN(not a number)

·parseFloat

- 强制转换成浮点数,如果不能转换,则返回NaN

- 例如:parseFloat("6.12"); 返回6.12

·typeof

- 查询当前类型,返回string/number/boolean/object/function/undefined

·isNaN (is not a number)

eg:

<!doctype html>
<html>
<head>
<title>计算平方</title>
<meta charset="UTF-8"/>
<script type="text/javascript">
//计算输入数字的平方
function cal(){
//获取文本框,从中取值
var input = document.getElementById("num");
//获取span,向其写入值
var span = document.getElementById("result");

//获取文本框的值
var n = input.value;
//如果文本框没有输入任何内容,则从文本框中获取的值是""
if(n==""|| isNaN(n)){
//如果n是空值,或者n不是数字,不计算平方,而是给予提示

//innerHTML是元素的内容
span.innerHTML = "请输入数字";
}else{
//输入的是数字,计算平方
span.innerHTML = n*n;
}
}
</script>
</head>
<body>
<input type="text" id="num"/>
<input type="button" value="平方" onclick="cal();"/>
=
<span id="result"></span>
</body>
</html>


7)特殊数据类型

·null

- null在程序中代表"无值"或者"无对象"

- 可以通过给一个变量赋值null来清楚变量的内容

·undefined

- 声明了变量但从未赋值

- 对象属性不存在

4.运算符

1)算数运算

·+ - * / %

· ++ --

eg:5/2=2.5

2)关系运算

· > < >= <= == !=

· 关系表达式的值为boolean类型(true,false)

·全等:===

- 类型相同

- 数值相同

·不全等: !==

3)逻辑运算



4)条件运算

又称三目运算,其结构为:

表达式?表达式1:表达式2;

eg:

<!doctype html>
<html>
<head>
<title>猜数字</title>
<meta charset="UTF-8"/>
<script type="text/javascript">
//生成一个随机数,由于该变量处于函数外部,因此是全局变量
//该代码是在页面加载时执行的。
var init_num = parseInt(Math.random()*100)+1;
console.log(init_num);

function guess(){
var input = document.getElementById("num");
var p = document.getElementById("result");

var num = input.value;
var msg = "";
if(num==""||isNaN(num)){
msg = "请输入1-100之间的整数";
}else{
if(num>init_num){
msg = "大了";
} else if(num<init_num){
msg = "小了";
} else if(num==init_num){
msg = "猜对了";
}
}
p.innerHTML = msg;
}
</script>
</head>
<body>
<input type="text" id="num"/>
<input type="button" value="猜" onclick="guess();">
<p id="result"> </p>
</body>
</html>


5.控制语句

1)分支结构

if/switch-case

2)循环结构

for/while/do-while

3)JS中的条件表达式



eg:

<!doctype html>
<html>
<head>
<title>阶乘</title>
<meta charset="UTF-8"/>
<script type="text/javascript">
function cal(){
var input = document.getElementById("num");
var span = document.getElementById("result");

var num = input.value;
if(num==""||isNaN(num)||num<1||num>100){
span.innerHTML = "请输入1-100之间的整数";
}else{
var sum = 1;
for(var i=num;i;i--){
sum *= i;
}
span.innerHTML = sum;
}
}

</script>
</head>
<body>
<input type="text" id="num"/>
<!-- HTML5规范下,按钮可以写成<button> -->
<button onclick="cal()">阶乘</button>
=
<span id="result"></span>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: