1.块语句

常用于组合0~多个语句:语法:{语句1;语句2……}

*没有块级作用域:如:在for循环里面定义一个自增数 i,可以在for循环外取到它跳出循环时的值,而且for循环里面新定义的数据也能取到。

*但是如果在函数里面定义一个变量,在函数外面取不到。

2. var 声明语句

var a = 1,b = 1;//正确
var a = b = 1; //不正确,如果用在方法中会出错,如:
function foo(){
var a = b = 1;
}
foo();
console.log(typeof a ); //'undefined'
console.log(typeof b ); //'num'

3.try...catch...finally: try后面必须有catch或者finally。

嵌套:注意执行的顺序:

4.函数语句

1)function fd(){//dosth  ;return;}  函数声明

2)var fe = function(){//dosth}  函数表达式

以上两种区别在于function声明会被优先处理,即函数前置;所以在定义function前调用fd()可以成功,函数表达式则不可以

3)for in (例:for name in obj)

  (1)顺序不确定,不能用遍历的方法

  (2)对象的enumerable为false时不会在里面出现

  (3)受原型链影响

4)switch

如果不写break,就会继续往下走。

5)循环语句(略)

6)with 可以修改当前的作用域,可以深层访问对象属性。如:

with({x:1}){console.log(x);}
with(document.forms[0]){console.log(name.value);} ==>var form = document.forms[0];console.log(form.name.value);

让JS引擎优化更难,可读性差,可被变量定义代替,严格模式下被禁用。(syntaxerror)

5.严格模式

是一种特殊的执行模式,它修复了部分语言上的不足,提供更强的错误检查,并增强安全性。

进入严格模式:'use strict'  可以是方法里,也可以是整个文档的开头,不一定非要写在第一行,可以在前面写其他的命令,但是不能写var之类。

1)不允许未声明的变量赋值。比如:x=1 只能写成 var x = 1。(refferenceerror)

2)arguments变为参数的静态副本(如果修改属性还是会相互影响)

3)delete参数、函数名报错。(syntaxerror)

4)delete不可配置的属性(如:configurable:false)报错 。(typeerror)

5)对象字面量重复属性名报错。(syntaxerror)

6)禁止八进制字面量。如:console.log(0123)。(syntaxerror)

7)eval,arguments变为关键字,不能作为变量、函数名。(syntaxerror)

8)eval 独立作用域。(undefined)

……

3、JS中的语句的更多相关文章

  1. js中退出语句break,continue和return 比较

    js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...

  2. js中退出语句break,continue和return 比较(转)

    原链接:http://blog.163.com/ued_er/blog/static/199703159201210283107315/ js中退出语句break,continue和return 比较 ...

  3. js中特有语句-with

    <script type="text/javascript"> /* *为了简化对象调用内容的书写. *可以用js中的特有语句with来完成. *格式 *with{ * ...

  4. js中退出语句break,continue和return 比较 (转载)

    在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一 ...

  5. js中if语句的几种优化代码写法

    UglifyJS是一个对javascript进行压缩和美化的工具,在它的文档说明中,我看到了几种关于if语句优化的方法. 一.使用常见的三元操作符 复制代码 代码如下: if (foo) bar(); ...

  6. js中退出语句break,continue和return 比较 (转)

    在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一 ...

  7. js中哪些语句在if语句中默认为真

    结论:js中有一个函数是:Boolean(value)这个函数把一个value值转换成相应的boolean值. 当value为以下值是为true:1.任意的非空字符串 .2.任意的非0数字 而当val ...

  8. js中的语句

    java语句与js的语句一样.1.判断if else/switch <script type=text/javascript> function fun1(){ var num = 10; ...

  9. js中switch语句不执行

    参考http://www.jb51.net/article/54393.htm switch语句与if语句的关系最为密切,也是其它编程语言中普遍使用的一种流程控制语句,但switch的匹配是全等模式, ...

随机推荐

  1. Hadoop笔记HDFS(1)

    环境:Hadoop2.7.3 1.Benchmarking HDFS 1.1测试集群的写入 运行基准测试是检测HDFS集群是否正确安装以及表现是否符合预期的好方法.DFSIO是Hadoop自带的一个基 ...

  2. Maven学习(五)-- 聚合与继承

    标签(空格分隔): 学习笔记 Maven的聚合特性能够把项目的各个模块聚合在一起构建: Maven的继承特性能够帮助抽取各模块相同的依赖和插件等配置,在简化POM的同时,还能够促进各个模块配置的一致性 ...

  3. php新手常用的函数(随时更新)

    //数字保留两位小数 $n = sprintf("%1.2f", $n); //方法二 $n = number_format($n, 2, '.', ''); //UTF8转GBK ...

  4. 编写高效且优雅的 Python 代码

    http://python.jobbole.com/86808/ http://python.jobbole.com/86869/?utm_source=blog.jobbole.com&ut ...

  5. Shell 语法之函数

    函数是被赋予名称的脚本代码块,可以在代码的任意位置重用.每当需要在脚本中使用这样的代码块时,只需引用该代码块被赋予的函数名称. 创建函数 格式 function name { commands } n ...

  6. tfs 分支

    集团-IT部张强 11:15:211.主干时刻处于稳定状态,随时可以发布.设专门人员对主干代码进行管理,普通开发人员只读. 2.为开发任务建立开发分支.常规的可以以小组为单位建立分支,较大的任务可以建 ...

  7. Load Runner11录制脚本出现乱码的解决方法

    方法一: 1.录制的脚本出现乱码 Go to Vugen -> Tools -> Recording Options -> Advancedb)   Check the option ...

  8. cookie预:

    什么是cookie? cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScript 来创建和取回 cookie ...

  9. $('div','li'),$('div , li'),$('div li')的区别

    要搞清楚$('div','li') 和 $('div , li') 和 $('div li') 区别: $('div','li'):是$(子,父),是从父节点里找子,而不是找li外面的div $('d ...

  10. hdoj 3501

    Problem Description Given a positive integer N, your task is to calculate the sum of the positive in ...