Expressions and Statement

JavaScript 两个最重要的概念表达式和语句

表达式概念:An expression is a phrase of JavaScript that a JavaScript interpreter can evaluate to produce a a value.

表达式的分类:

1.Primary Expressions

 1 "hi word"
 2 /pattern/
 3 
 4 //some of JavaScript reserved word are primary expressions
 5 true
 6 false
 7 null
 8 this //Evaluates to the "current" object
 9 
10 //finally the third type of primary expressions is the bare variable reference
11 I
12 sum
13 undefined // undefined is a global variable ,not like null.
View Code

2.Object and Array Initalizers

1 // Array initializer
2  [1,5,2,6,5]
3 
4 // Object initializer
5 {x:2,y3}
View Code

3. Function Definition Expressions

1 //*function expression
2 function(x) { return x*x }
3 
4 //* function statement 
5 function foo(){
6  console.log("bar");
7 };
View Code

4.Property Access expression & Invoication expression & Object Creation expression

 1 //Property Access expression
 2 var o={x:1,y:{z:3}}
 3 var a=[o,1,4,[5,6]]
 4 
 5 o.x //property x of expression o
 6 o["y"] //property x of expression o
 7 a[1] //element at index 1 of object o
 8 a[0].x // property x of expression a[0]
 9 
10 //Invocation expression
11 foo(1,2)
12 a.sort()
13 Math.max(x,y,z)
14 
15 //object creation expression
16 new Object()
17 new Point(2,3)
View Code

5.Arithmetic Expression & Logical Expression & Assignment Expression

 1 //Arithmetic 
 2 1+1
 3 2*5
 4 3-4
 5 6%9
 6 5--
 7 6++
 8 
 9 //Logical
10 7&8
11 7<<2
12 ^0x0f
13 // Assignment
14 I=6
15 o.x=2
16 
17 x +=x+1
18 .......
View Code

语句概念:statements are JavaScript sentences or commands;Expressions are evaluated to produce a value, but statements are
executed to make something happen.

语句的分类:

Statement Syntax Purpose
break break [label]; Exit from the   innermost loop or switch or from named enclosing statement
case case expression: Label a statement   within a switch
continue continue   [label]; Begin next iteration   of the innermost loop or the named loop
debugger debugger; Debugger breakpoint
default default: Label the default   statement within a switch
do/while do statement while   (expression); An alternative to the   while loop
empty ; Do nothing 
for for(init; test; incr)   statement An easy-to-use loop
for/in   for (var in object)   statement Enumerate the   properties of object
function function   name([param[,...]]) { body } Declare a function   named name
if/else if (expr) statement1   [else statement2] Execute statement1 or   statement2
label label: statement Give statement the   name label
return return   [expression]; Return a value from a   function
switch switch (expression) {   statements } Multiway branch to   case or default: labels
throw throw   expression; Throw an exception
try try { statements   } Handle exceptions
 [catch { handler   statements }] 
 [finally{ cleanup   statements }] 
   
use   strict use strict; Apply strict mode   restrictions to script or function
var var name [ = expr] [   ,... ]; Declare and   initialize one or more variables
while while (expression)   statement A basic loop   construct
with with (object)   statement Extend the scope   chain (forbidden in strict mode)
   

明确了概念后,我们需要非常清晰的分出来JavaScript的表达式和语句; 在后面的学习中你会发现表达实在是太重要了,它的作用域特殊,它的执行特殊;

 1 /*确认下面code到底是什么?*/
 2 var a="123";   //?
 3 var a=1,b=2;//?
 4 var a,b//?
 5 
 6 var f=function(x){ return x+1; } //?
 7 function() {} //?
 8 function foo(){}//?
 9 
10 i++;//?
11 a+b;//?
12 (x+y);//?
13 
14 {x:2}//?
15 var a={x:2}//?
16 a.x//?
17 
18 /*block*/
19 while(x<10){
20     x++;
21 }             //?
22 
23 var x=1;
24 {
25     var x=2;
26 }             //?
27 
28 if(x>1){} //?


 

 

转载于:https://www.cnblogs.com/MemoryHunter/p/6514333.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值