【js】day02_语法规范_标识符_数据类型_运算符_控制语句
2015-09-29 22:40
806 查看
【js】day02_语法规范_标识符_数据类型_运算符_控制语句
·由Unicode字符集编写
·注释
- 单行://
- 多行:/* */
·语句
- 表达式、关键字、运算符组成
- 大小写敏感
- 使用分号或者换行结束,一行中有多个语句不能省略分号
·标识符
- 由不以数字开头的字母、数字、下划线(_)、美元符号($)组成
- 常用于表示函数、变量等名称
- 名称最好有明确的含义
- JavaScript语言中代表特定含义的词成为保留字,不允许程序定义为标识符
2)标准关键字
3)变量
·变量声明
- 使用关键字var声明变量,如var x,y;
·变量初始化
- 使用“=”赋值
-没有初始化的变量则自动取值为undefined
变量没有类型,统一用关键字var声明。变量所引用的数据是有类型的。
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:
7)特殊数据类型
·null
- null在程序中代表"无值"或者"无对象"
- 可以通过给一个变量赋值null来清楚变量的内容
·undefined
- 声明了变量但从未赋值
- 对象属性不存在
·+ - * / %
· ++ --
eg:5/2=2.5
2)关系运算
· > < >= <= == !=
· 关系表达式的值为boolean类型(true,false)
·全等:===
- 类型相同
- 数值相同
·不全等: !==
3)逻辑运算
4)条件运算
又称三目运算,其结构为:
表达式?表达式1:表达式2;
eg:
if/switch-case
2)循环结构
for/while/do-while
3)JS中的条件表达式
eg:
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>
相关文章推荐
- 省市二级联动
- 常用的Javascript表单正则验证函数
- Unobtrusive Javascript
- 如何正确学习JavaScript
- js鼠标跟随移动显示表格上某一行的信息(包括表格外的信息)
- 第一章JSP基础语法
- JavaScript中简单的数组使用及明细处理
- JavaScript高级程序设计之函数表达式之闭包第7.2讲笔记
- [JavaScript权威指南 [笔记]
- 用js将二维数组转为json格式字符串
- Chrome 控制台console的用法(学了之后对于调试js可是大大有用)
- 【js】day01_JS概述_Js特点_使用JS_调试
- JSP中forward和redirect的区别
- 【前端学习】javascript正则表达式和字符串RegExp and String(一)
- 用Servlet处理表单提交的数据,然后再jsp页面中显示
- JavaScript 通过ClassName获取元素
- JavaScript 控制元素隐藏显示
- JS获得鼠标位置(已经解决不同浏览器问题)
- JS如何判断包括IE11在内的IE浏览器
- 妙味js视频学习之旅(二)