关于javascript语句,有下面一些有趣的用法。

1.空语句的使用:

空语句只包含一个";",那在什么时候可以使用呢?

例:

//初始化一个数组a
for(i = 0;i < a.length;a[i++] = 0);

在这个用于初始化的for循环中,不需要任何循环体,但是javascript需要循环体中至少包含一条语句,所以这里利用空语句保证语法正确。

(注意:循环体后面的语句块不一定需要花括号)

2.声明语句的注意点

1)关于var

var声明的全局变量和函数声明的变量无法利用delete来删除

2)关于function

function语句里的花括号是必须的。

函数声明不能放在if语句,while语句,或其他任何语句中

函数声明也会被显示地提前到脚本或函数的顶部,和var声明的提前不同,整个函数体同样也被提前了。也就是说,可以在声明一个函数之前调用它。

3条件语句

1)关于if

Javascript中if,else的匹配规则是,else总是和就近的if语句匹配。

例:

i=j=1;
k=2;
if(i==j)
if(j==k)
console.log("i equals k");
else
console.log("i doesn't equal j"); //这里的缩进会给你错误的暗示!

上面这段代码其实会被解析为:

if(i==j){
if(j==k)
console.log("i equals k");
else
console.log("i doesn't equal j");
}

所以务必使用花括号

2)switch语句

switch语句中case 子句的内容和表达式的匹配方式是"==="恒等

子句case语句后必须要跟break或者return,否则余下的case语句也会被判断执行

default标签其实可以放在switch语句的任何地方

4.循环

1)for循环还可以用来便利链表数据结构

function tail(o){
for(;o.next;o = o.next) /* empty */;
return o;
}

2)for/in

可以利用下面的代码把所有对象属性赋值到一个数组

var o = {x:1,y:2,z:3};
var a = [],i = 0;
for(a[i++] in o) /* empty */;

5.标签语句

通过给一个语句加标签,就可以给这个语句起一个名字,这样在程序的任何地方都可以使用这个名字来引用它,可以标记任何语句,

但是被标记的语句通常是那些循环语句,即while、do/while、for和for/in语句,通常给循环命名,就可以使用break语句和continue语句来

退出循环或者循环的某一次迭代。

如:

<script type="text/javascript">
outerloop:
for (var i = 0; i < 10; i++)
{
innerloop:
for (var j = 0; j < 10; j++)
{
if (j > 3)
{
break;
}
if (i == 2)
{
break innerloop;
}
if (i == 4)
{
break outerloop;
}
document.write("i=" + i + " j=" + j + "<br>");
}
}
</script>

javascript基础知识-语句的更多相关文章

  1. Javascript基础知识总结一

    Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  2. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  3. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  4. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  5. (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识

    开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...

  6. JavaScript基础知识整理

    只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...

  7. JavaScript基础知识从浅入深理解(一)

    JavaScript的简介 javascript是一门动态弱类型的解释型编程语言,增强页面动态效果,实现页面与用户之间的实时动态的交互. javascript是由三部分组成:ECMAScript.DO ...

  8. JavaScript基础知识必知!!!

    JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型. JS作用:表单验证,减轻服务端的压力:添加页面动画效果:动态更改页面内容:Ajax网络请求. 下面简单介 ...

  9. JavaScript基础知识梳理,你能回答几道题?

    在学习JavaScript的时候,总是这里学一点,那里学一点,很的很零星,很杂,没有很系统的去学习,感觉好像JavaScript的知识点都了解了,但是真正要说起来,又不知道从何说起! 最深刻的体会就是 ...

随机推荐

  1. 【Tree 1】树形结构数据呈现的递归算法实现

    一.基本概况 在我的项目中,常常会用到树形结构的数据,最为明显的就是左边菜单栏,类似于window folder一样的东西. 而我之前一直是借助前端封装好的ZTree等工具实现展示,而后台则通常使用递 ...

  2. Java分布式Socket监控项目思考

    内容说明 一项课程作业Java编写Socket长连接监控分布式终端,并将终端状态写入数据库供前端查询 基础:c++/Posix/APUE/Mysql&sqlite 核心内容:Socket/线程 ...

  3. SQLite数据库文件格式

    数据库命名约定 sqlite3_open()API用到数据库的文件名,可以是相对当前工作目录的相对路径名,也可以是从系统根文件树开始的完整路径名.任何被本地文件系统接受的正规文件名都是好的. 如果文件 ...

  4. PacketiX VPN搭建企业VPN

    参考资料:http://jingyan.baidu.com/article/9989c746043c44f649ecfe69.html

  5. 【EF学习笔记07】----------加载关联表的数据 贪婪加载

    讲解之前,先来看一下我们的数据库结构:班级表 学生表 贪婪加载 //贪婪加载 using (var db = new Entities()) { var classes = db.Classes.Wh ...

  6. AngularJS 教程

    AngularJS 教程 AngularJS 通过新的属性和表达式扩展了 HTML. AngularJS 可以构建一个单一页面应用程序(SPAs:Single Page Applications). ...

  7. JS驗證兩位小數

    function SizeCheck(Textdiv) {                var fg = true;                str = $("#" + T ...

  8. 树莓派USB摄像头与camera模块对比

    http://www.cnblogs.com/weixinforspurs/p/5575962.html ——————————————————————————————————————————————— ...

  9. Linux相关文章

    1.linux 中特殊符号用法详解 2.linux之vim命令 3.linux各文件夹的作用 4.修改linux文件权限命令:chmod 5.CentOS 6.6下安装配置Tomcat环境 6.lin ...

  10. VC++ 控制外部程序,向外部程序发送一个消息的方法

    这里需要考虑两部分的内容: 发送端: 查找对应的窗体,找到CWnd的值 向窗体发送消息 举例: CWnd* wnd = FindWindow(NULL, _T("选择题做题过程中" ...