目录:

1、变量:存储数据的容器

2、数据类型

3、string数据类型

4、number数据类型

5、boolean数据类型

6、数据类型的隐式转换

6、数据类型转换函数

7、特殊类型

8、算术运算

9、关系运算

10、逻辑运算

11、条件运算符


1、变量:存储数据的容器

1)变量声明:使用关键字var声明变量,如var x,y;

变量命名常用于表示函数、变量等的名称。

注意事项:以var关键字声明,声明的时候不确定类型,变量的类型以赋值为准。

例如:

var x,y,z;
x = 10;
y = "mary";
z = true;

2)变量初始化:使用等号赋值

如:var count = 0;

注意事项:没有初始化的变量则自动取值为undefined

1)    变量命名规则:

1、不以数字开头的字母、数字、下划线、$。

2、不能和保留关键字重复,如var、function、number、string、break、if等。

3、  变量名有含义(见名知意)

4、  多个单词时,首字母小写,其余单词首字母大写。

5、  不要随意缩写命名,除公认的缩写外。

注:在JS中变量名是区分大小写的

2)    变量的分类

变量具有作用域:变量的有效范围

1、公共变量:定义在所有函数外,所有函数都可以使用。

2、局部变量:定义在函数内部的,仅函数中可以使用。

2、数据类型

1)基本类型:number数字、string字符串、boolean布尔

2)特殊类型:null空、undefined未定义

3)复杂类型:array数组、object对象

3、string数据类型

1)表示文本:由Unicode字符、数字、标点符号组成的序列。

2)首尾由单引号或双引号括起来。(只要引号括起来的都是字符串)

3)特殊字符需要转义,用转义符\,如:\n,\\,\',\“

例如:

var a = "欢迎来到\"JavaScript世界\"";

注意事项:可用在正则表达式,只允许录入汉字[^\u4e00-\u9fa5$],每个汉字都有转义符。

4、number数据类型

1)不区分整型数值和浮点型数值:所有数字都采用64位浮点格式存储,类似于double格式。

2)整数:

3)浮点数:使用小数点记录数据。

5、boolean数据类型

1)仅有两个值:true和false;实际运算中true=1,false=0

2)多用于结构控制语句。

6、数据类型的隐式转换

1)JavaScript属于松散类型的程序语言

①变量在声明时不需要指定数据类型。

②变量由赋值操作确定数据类型。

2)不同类型数据在计算过程中会自动进行转换

①数字+字符串:数字转换为字符串

②数字+布尔值:true转换为1,false转换为0

③字符串+布尔值:布尔值转换为字符串true或false

④布尔值+布尔值:布尔值转换为数值1或0

 var s="a";
var n=1;
var b1=true;
var b2=false;
alert(s + n);//a1
alert(s + b1);//atrue
alert(n + b1);//2
alert(b1 + b2);//

6、数据类型转换函数

1)转换方式:

①隐式转换:直接转,默认的规则

②显式转换:利用转换的方法

注意事项:不建议用隐式转换。

2)显式转换

①toString:转成字符串,所有数据类型均可转换为string类型。

②parseInt:强制转换成整数,如果不能转换,则返回NaN。

例如:parseInt("6.12")=6(无四舍五入)

③parseFloat:牵制转换成浮点数,如果不能转换,则返回NaN。

例如:parseFloat("6.12")=6.12

④typeof:查询数值当前类型,返回string/number/boolean/object。

例如:typeof(“test”+3)="string"

3)NaN:not a number,非常特殊,它不是数字,所以任何数跟它都不相等,甚至NaN本身也不等于NaN

4)isNaN(str): is not a number,判断文本是否为数值,false为数值,true为非数值

5)案例

eg1:转换函数:得到录入数值的整数部分

<!--  html代码:   -->
<input type="text" id="txtData" />
<input type="button" value="得到录入数据的整数部分" onclick="getInt();" />
//js代码:
<script type="text/javascript">
function getInt() {
var str = document.getElementById("txtData").value;
if (isNaN(str)) {
alert("请录入数值");
}else {
var data = parseInt(str);
alert("整数部分为:" + data);
}
}
</script>

eg2:转换函数:计算录入数值的平方

<!--  html代码:   -->
<input type="text" id="txtData" />
<input type="button" value="计算平方" onclick="getSquare();" />
//js代码:
<script type="text/javascript">
function getSquare() {
var str = document.getElementById("txtData").value;
if (isNaN(str)){
alert("请录入数值");
}else {
var data = parseFloat(str);
var result = data * data;
alert(result);
}
}
</script>

7、特殊类型

1)null:null在程序中代表“无值”或者“无对象”。可以通过给一个变量赋值null来清除变量的内容。

2)undefined:声明了变量但从未赋值或这对象属性不存在。

8、算术运算

1)加(+)减(-)乘(*)除(/)余数(%)

+=、-=、*=、/=、%=

例如:i+=1等价于i=i+1

①“-”:可以表示减号,也可以表示负号。

②“+”:可以表示加法,也可以用于字符串的连接。

2)递增(++)递减(--)

i++等价于i=i+1,i--等价于i=i-1

9、关系运算

1)用于判断数据之间的大小关系:“>”、“<”、“>=”、“<=”、“==”、“!=”

注意事项:“= =“比较的是值(忽略类型)。

2)关系表达式的值为boolean类型(“true”或“false”)

3)严格相等:“===”类型、数值都相同。

4)非严格相等:!==

例如:

var a = "10";
var b = 10;
if(a == b) alert("equal");
if(a === b) alert("same");

10、逻辑运算

1)逻辑非(!)、逻辑(&&)、逻辑或(||)

2)逻辑运算的操作数均为boolean表达式

b1

b2

b1&&b2

b1||b2

!b1

true

true

true

true

true

false

true

false

true

true

false

false

true

false

false

false

false

false

注:与:一假则假 、或:一真则真

11、条件运算符

1)if语句、if-else语句、if-else if-else语句、swich语句(流程控制语句)

2)语法:

表达式?代码块1: 代码块2

如:a>b?a比b大:b比a大;

if(表达式1){语句块1}else if(表达式2){语句块2}else{语句块3}

如:

当条件为true时,执行代码块1,否则执行代码块2

eg:猜数字

<!--  html代码:   -->
<input type="text" id="txtData" />
<input type="text" onblur="guessNumber(this.value);" />
<!--this代表当前对象--> //js代码:
<script type="text/javascript">
function guessNumber(str) {//内置结果
var result = 10;
if (isNaN(str)){
alert("请录入数值");
}else {
var data = parseFloat(str);
var info = data > result ? "大了" : "小了";
alert(info);
}
}
</script>

程序默认情况下顺序执行,改变或者控制执行顺序。

1)if语句:①if(表达式){语句块1}else{语句块2}

②if(表达式1){语句块1}else if(表达式2){语句块2}else{语句块3}

2)switch-case语句:

switch(表达式){

case 值1:语句1;break;

case 值2:语句2;break;

default:语句3;

}

注意事项:

1、  switch语句中包含:switch、case、break、default关键字。

2、  每个case后面仅带有一个值,并且相互之间不能相同。

3、  break:写在每个case或者defautl后面,表示关闭switch。

  注:break可以省略,如果没有break,switch将继续忽略case执行下一条语句块,直到遇到break或者switch的结束"}"。

  例如:

switch (parseInt(score/10)){
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:score = "差";break;
case 6:
case 7:score = "中";break;
case 8:score = "良";break;
case 9:
case 10:score = "优";break;
default:score = "你输入的成绩有误,请重新输入!";break;
}

4、  default:可以写在switch结构的任何位置 ,一般放在最后,default在js中可省略。

注意:switch语句需要满足值和类型都相同,等同于“===”。

3)for语句:

for(初始化;条件;增量){

语句;

}

注意事项:初始化中的局部变量用var声明。

4)while语句

while(条件){

语句1;

}

特点:先判断,后执行

5)while语句

do{

语句1

}while(条件)

特点:先执行,后判断

注:可使用break或者continue中止循环

break:使用在switch表示跳出switch

使用在循环中表示跳出循环

continue:使用在循环中,表示路过本次循环,进入下一次循环

案例:阶乘计算

<!--  html代码:   -->
<input type="button" value="求10的阶乘" onclick="getFac();" /> //js代码:
<script type="text/javascript">
function getFac() {
var result = 1;
for (var i = 1; i <= 10; i++) {
result *= i;
} alert("10的阶乘为:" + result);
}
</script>

ps:如果有什么错误,欢迎大家指出了,一起交流学习。

二、JavaScript的语法的更多相关文章

  1. js上 二.JavaScript基本语法

    1.JavaScript词法结构 所谓词法结构是指一套基础性规则,用来描述如何使用这门语言来编写程序,包括如下几项: ü 字符集unicode ü 区分大小写 (true和TRUE) ü 忽略空白字符 ...

  2. javascript的语法作用域你真的懂了吗

    原文:javascript的语法作用域你真的懂了吗 有段时间没有更新了,思绪一下子有点转不过来.正应了一句古话“一天不读书,无人看得出:一周不读书,开始会爆粗:一月不读书,智商输给猪.”.再加上周五晚 ...

  3. 【repost】JavaScript 基本语法

    JavaScript 基本语法,JavaScript 引用类型, JavaScript 面向对象程序设计.函数表达式和异步编程 三篇笔记是对<JavaScript 高级程序设计>和 < ...

  4. 从 Vue 的视角学 React(二)—— 基本语法

    基于 Vue.js 开发的时候,每个 vue 文件都是一个单独的组件,可以包含 HTML,JS,CSS 而 React 是以函数为基础,每个 function 就是一个组件.虽然 JSX 让 HTML ...

  5. JavaScript交互式网页设计 • 【第1章 JavaScript 基本语法】

    全部章节   >>>> 本章目录 1.1 JavaScript 概述 1.1.1 JavaScript 简介 1.1.2 JavaScript 的概念和执行原理 1.1.3 J ...

  6. JavaScript基本语法(一)

    前段时间学习了HTML和CSS,也实战了一些结构较简单的项目.在还没运用到JS的知识时,做出来的效果总觉得少了些什么.虽然总体布局与一些基本的特效,也能用HTML+CSS就能完成.但如今开始进入Jav ...

  7. javascript运算符语法概述

    × 目录 [1]个数 [2]优先级 [3]结合性[4]类型[5]规则表 前面的话 javascript中的运算符大多由标点符号表示,少数由关键字表示,它们的语法言简意赅,它们的数量却着实不少.运算符始 ...

  8. javascript基础语法——表达式

    × 目录 [1]原始表达式 [2]复杂表达式 前面的话 一般地,关于javascript基础语法,人们听得比较多的术语是操作符和语句.但是,其实还有一个术语经常使用,却很少被提到,这就是javascr ...

  9. javascript基础语法——词法结构

    × 目录 [1]java [2]定义 [3]大小写[4]保留字[5]注释[6]空白[7]分号 前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫 ...

  10. 实验二 PHP基本语法实验

    实验二 PHP基本语法实验 0 实验准备 0.1实验环境和相关工具软件 具体到的机房环境,请在Windowsxp环境下做本实验: l  操作系统:Windowsxp l  Web服务器:Apache ...

随机推荐

  1. dotnet pack 打包文件版本号引起 "Could not load file or assembly" 问题

    如果不是遇到,真的不会想到,代码世界的问题真是千奇百怪,这次遇到的是 dotnet pack 打包文件版本号引起的问题. 之前进行 nuget 打包都是在 Visual Studio build 时进 ...

  2. 更新EF(更新表 添加表…)

           

  3. entity framework 封装基类

    /// <summary> /// 查询业务基实现 /// </summary> /// <typeparam name="T"></ty ...

  4. 图像滤镜艺术--Toaster滤镜

    原文:图像滤镜艺术--Toaster滤镜     根据Instagram CEO的说法,Toaster滤镜是Instagram所有滤镜中最复杂的滤镜,这个滤镜给人一种新奇的红色烘烤感,很能让人联想起这 ...

  5. Win8Metro(C#)数字图像处理--2.31灰度拉伸算法

    原文:Win8Metro(C#)数字图像处理--2.31灰度拉伸算法  [函数名称] 灰度拉伸函数GrayStretchProcess(WriteableBitmap src) [算法说明]    ...

  6. oracle data guard备库备份恢复

    客户有套data guard环境,主库在阿里云上,备库在本地机房,现在想定期做备份,但是因为一些原因,备份阿里云上的主库实现会有些问题,所以只能备份本地的备库.目前需求就是测试备库的备份文件是否可以进 ...

  7. css的圣杯布局

    圣杯布局和双飞翼布局实现的效果是一样的. 代码解析: 1.四个section,container,main,left,right.其中那个container为父容器. 2.main,left,righ ...

  8. delphi中最小化其他程序及所有程序最小化(使用 shell.minimizeAll 和自己寻找窗口这两种办法)

    1.所有程序最小化 uses ComObj;   var    shell : OleVariant; begin      shell := CreateOleObject('Shell.Appli ...

  9. 使用MinGW编译Boost

    1.下载Boost(http://www.boost.org) 我目前用的是1.61.0版本 2.将MinGW下的bin目录完整路径设置到系统环境变量Path中,保证cmd命令行能找到gcc,g++等 ...

  10. 通过Graphics对象获取它所属的Control

    using System.Runtime.InteropServices;   [DllImport("user32.dll")] public static extern Int ...