JavaScript 变量,语句
定义变量的方式:
var 变量可以没有初始值,变量可以修改,变量可以覆盖,存在变量提升。
// 变量提升机制
console.log(name)// undefined
var name = "Amos";
let 块级作用域,不允许重复声明,不存在变量提升,值在当前作用域内生效,在使用未定义的变量会报错。
console.log(name); // ReferenceError:name is not defined let name= "Amose"
const 变量必须有初始值,变量值不可改变,变量值不可覆盖,只有在当前作用域内有效。变量不可提升:
console.log(name); // ReferenceError:name is not defined const name= "Amose"
注意:一个常量不能和它所在的作用域的其它变量或函数有相同的名称
在函数内部不使用关键字声明变量就变成了犬决变量
var a = 'hello world';
function b(){
a = 'hello Amose'
console.log(a)
};
b() ; // 'hello Amose'
console.log(a); // 'hello Amose'
语句:
if语句
当条件为真,if语句会执行一段语句,如果条件为假,则执行另一段语句。
if(true){ }else{ }
示例:使用if...else
if(条件){
条件为真的时候执行
}else{
条件为假的时候执行
}
使用else if
if(条件){
条件为真的时候执行
}else if(条件) {
条件为真的时候执行
}else{
条件为假的时候执行
}
注意:如果在条件中使用赋值运算,用元括号包裹赋值运算。
if((a=b)){ }
if...else的简写方式三目运算: (条件)?表达式1:表达式2;
do-while 语句
在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。
do{ // 需要执行的代码} while (条件)

实例:
do{
console.log("The number is"+ i)
i++
}
while (i<5)
while 语句
while 循环会一直循环代码块,只要指定的条件为true
while(条件){要执行的代码块}
while (i<10){
text += "数字是"+i;
i++
}

for语句
同样的代码执行多次,并且每次的值都不同
语法:for (语句1;语句2;语句3) { 找执行的代码块 }

示例:循环一个数组
var array = [1,2,3,4,5,6,7,8];
for(var i=0; i< arry.length;i++){
console.log(i,array[i])
}
for-in语句
语句遍历对象的属性。
var person = {fname:"Bille",lname:"Gates",age:62}
var text = “”;
var x;
for (x in person){
text += person
}
循环数组
var arr = [1,2,3];
let index;
for(index in arr) {
console.log("arr["+index+"]"+arr[index])
}
label 语句
语句的前面有标签label 相当于定位符,语句部分可以使任意语句。
label
statement
break 和 continue 语句
break 语句 跳出 循环
break 语句 会中断循环,并继续执行循环之后的代码
for (i = 0; i < 10; i++){
if(i === 3){ break }
text += "数字是"+i+ "<br>";
}
continue 语句 跳过 循环中的一个迭代
continue 语句 中断(循环中) 的一个迭代,如果发生指定的条件,然后继续循环中的下一个迭代。
本例跳过值3
for(i = 0; i < 10: i++){
if (i ===3){
continue;
}
text += "数字是" + i + "<bar>";
}
with 语句
with 语句是逐级的对象访问提供命名空间式的速写方式,也就是在指定的diam区域,直接通过节点名称调用对象。
var obj = {a:1,b:2,c:3}
// 改变 obj 中每一项的值,
obj.a = 2; obj.b = 3; obj.c = 4;
用with 的写法
with (obj){
a = 3;
b= 4;
c = 5;
}
switch
switch 语句来选择要执行的多个代码模块之一。
语法:
switch(num){
case 1:
执行代码块 1
break;
case 2:
执行代码 2
break;
default:
与 case 1 和 case 2 不同时执行的代码。
}

JavaScript 变量,语句的更多相关文章
- JavaScript 变量
一,JavaScript 变量(存储信息的容器) 与代数一样,JavaScript 变量可用于存放值(比如 x=2)和表达式(比如 z=x+y). 变量可以使用短名称(比如 x 和 y),也可以使用描 ...
- javascript变量声明 及作用域
javascript变量声明提升(hoisting) http://openwares.net/js/javascript_declaration_hoisting.html 可能要FQ一下 java ...
- 六天玩转javascript:javascript变量与表达式(2)
本系列内容为本人平时项目实践和参照MDN,MSDN,<javascript语言精粹>,<Effective Javascript>等资料,并且整理自己EverNote的日常积累 ...
- 六天玩转javascript:javascript变量与表达式(1)
说明 本系列属于进阶系列,语常用语法等不在本系列介绍范围之内. 在我刚开始做一个程序员并开发项目的时候,我总是喜欢使用开发语言的各种特性,每次m$发布新版C#的时候我总是会把开发者预览版下好,亲自体验 ...
- 深入探究javascript的 {} 语句块
今日学习解析json字符串,用到了一个eval()方法,解析字符串的时候为什么需要加上括号呢?摸不着头脑.原来javascript中{}语句块具有二义性,不加括号会出错,理解这种二义性对我们理解jav ...
- 声明(创建) JavaScript 变量
在 JavaScript 中创建变量通常称为"声明"变量. 我们使用 var 关键词来声明变量: var carname; 变量声明之后,该变量是空的(它没有值). 如需向变量赋值 ...
- 2015第35周五JavaScript变量
java语言里有一句很经典的话:在java的世界里,一切皆是对象. Javascript虽然跟java没有半点毛关系,但是很多会使用javascript的朋友同样认为:在javascript的世界里, ...
- javascript 变量 命名规范 变量的作用域
原文:javascript 变量 命名规范 变量的作用域 大家好,我是小强老师,今天讲解的是变量 变量 小时候我们学过 这个 应用题 : X+1=2; 问 X 等于几? 答案是 1 对了,很聪 ...
- 从头开始学JavaScript (六)——语句
原文:从头开始学JavaScript (六)--语句 一.条件分支语句:if 基本格式: if (<表达式1>){ <语句组1>}else if (<表达式2> ...
- 第一百零六节,JavaScript变量作用域及内存
JavaScript变量作用域及内存 学习要点: 1.变量及作用域 2.内存问题 JavaScript的变量与其他语言的变量有很大区别.JavaScript变量是松散型的(不强制类型)本质,决定了它只 ...
随机推荐
- 利用WebSocket和EventSource实现服务端推送
可能有很多的同学有用 setInterval 控制 ajax 不断向服务端请求最新数据的经历(轮询)看下面的代码: setInterval(function() { $.get('/get/data- ...
- MySQL索引优化(索引单表优化案例)
1.单表查询优化 建表SQL CREATE TABLE IF NOT EXISTS `article` ( `id` INT(10) UNSIGNED NOT NULL PRIMARY KEY AUT ...
- ids
https://www.cnblogs.com/wyt007/p/8309377.html
- 常用sql---表记录数和占用空间统计
1.每张表的记录数和占用空间 select owner as 用户名, table_name as 表名, num_rows as 记录数, ROUND(t.NUM_ROWS * t.AVG_ROW_ ...
- LOJ 6192 城市网络(树上倍增)
LOJ #6192. 「美团 CodeM 复赛」城市网络(链接) 一棵以 $ 1 $ 号节点为根的树,每个点有一个权值,有 $ q $ 个询问,每次从 $ x $ 点开始往某个祖先 $ y $ 走,初 ...
- Store generated project files externally
最近项目要从.net转java了,之前java语言就就用过,本着熟悉回顾的想法,决定自己用maven搭建一个基础的ssm框架,一些搭建完毕,程序也能正常运行了.最后对比了别人搭建好的源码,发现他们im ...
- WPF 远程显示原图 当前主页面 工具栏 一个Window页面的元素适用一个效果
http://www.jb51.net/article/98384.htm 1.wpf远程显示原图: Stretch="Fill" + ; 主要是因为那个950和650,据显示位置 ...
- js加密php解密(CryptoJS)碰到的坑
今天做了一个功能,需要js传密码到php文件,对js密码 进行判断,为想为这个传输过程进行解密,参考了网上的一个方法(这个方法我只是使用了,并没有太深了解0.0) 首先要引入3个js文件 (在网上可搜 ...
- JSP文件的上传和下载
文件上传下载,与传统的方式不同,这里能够上传和下载10G以上的文件.而且支持断点续传. 通常情况下,我们在网站上面下载的时候都是单个文件下载,但是在实际的业务场景中,我们经常会遇到客户需要批量下载的场 ...
- luogu 2698 [USACO12MAR]花盆Flowerpot 单调队列
刷水~ Code: #include<bits/stdc++.h> using namespace std; #define setIO(s) freopen(s".in&quo ...