1. JS的输出

innerHTML:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
</head> <body> <h1>我的第一个 Web 页面</h1> <p id="demo">我的第一个段落</p> <script>
document.getElementById("demo").innerHTML = "段落已修改。";
</script> </body>
</html>

document.write():

  在页面载入之后,使用 document.write 后,输出的内容将覆盖原内容。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head> <body> <h1>我的第一个 Web 页面</h1> <p>我的第一个段落。</p> <script>
document.write(Date());
</script> </body>
</html>

  写到控制台的例子在前一篇已经用过了。

2. JS变量

  用 内嵌JS的 html + Chrome F12 控制台的模式,调试JS语法。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head> <body> <h1>我的第一个 Web 页面</h1> <p>我的第一个段落。</p> <script>
c = 20;
var d = 25;
var myArray = [1, 2, 3, 4, 5];
var myObject = {id:1, name:"Hello World"};
function myPlus(a, b)
{
return a + b;
}
console.log(myPlus(c,d)); //输出 45
console.log(myArray[0]); //输出 1
console.log(myArray[1]); //输出 2
console.log(myObject.id); //输出 1
console.log(myObject.name); //输出 Hello World
</script> </body>
</html>

  刚好最近在用 lua,上面这个例子可以看出:

  • 弱类型;
  • 变量声明时即赋值,var 可省略;
  • array 与 table 的构成方式与 lua 相同;
  • JS的数组索引从0开始,而不是lua从1开始;

3. JS流程控制:

break 用于跳出循环。
catch 语句块,在 try 语句块执行出错时执行 catch 语句块。
continue 跳过循环中的一个迭代。
do ... while 执行一个语句块,在条件语句为 true 时继续执行该语句块。
for 在条件语句为 true 时,可以将代码块执行指定的次数。
for ... in 用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
function 定义一个函数
if ... else 用于基于不同的条件来执行不同的动作。
return 退出函数
switch 用于基于不同的条件来执行不同的动作。
throw 抛出(生成)错误 。
try 实现错误处理,与 catch 一同使用。
var 声明一个变量。
while 当条件语句为 true 时,执行语句块。

  测试下 switch:

function myCalculator(calc, a, b)
{
switch(calc)
{
case "plus":
return a + b;
case "minus":
return a - b;
default:
return 0;
}
}
console.log(myCalculator("minus", 100,19));

  可以看出在流程控制上 JS 的语法与 C/C++ 的写法几乎相同。

  再来测试一下 for、for in。

var myArray = [1, 2, 3, 4, 5];
var myObject = {id:1, name:"Hello World"}; function looplog(paramArray, paramObject)
{
for(k in paramArray)
{
console.log(k); //输出 0-4,可见k是索引
} for(k in paramArray)
{
console.log(paramArray[k]);
} for(k in paramObject)
{
console.log(k); //输出 id、name,k仍是索引
} for(k in paramObject)
{
console.log(paramObject[k]);
} for(var i = 0; i < paramArray.length; i++)
{
console.log(paramArray[i]);
}
} looplog(myArray, myObject);

JS 输出与变量的更多相关文章

  1. JavaScript 基础——使用js的三种方式,js中的变量,js中的输出语句,js中的运算符;js中的分支结构

    JavaScript 1.是什么:基于浏览器 基于(面向)对象 事件驱动 脚本语言 2.作用:表单验证,减轻服务器压力 添加野面动画效果 动态更改页面内容 Ajax网络请求 () 3.组成部分:ECM ...

  2. js中的变量类型

    js 中输出定义变量的类型  typeof  变量名. var u:  --underfined类型 var s = "你是一个好人":   --string类型 var n = ...

  3. js对象私有变量公有变量问题

    0 js对象私有变量公有变量问题5 小弟初学JS面向对象编程 现有一问题 请教各位大虾: Person=function (){ //私有变量定义 var name; vae age; var Ale ...

  4. js 函数和变量的提升

    js 函数和变量的提升 1. 函数的作用域: js中 ,函数的作用域为函数,而不是大括号. var hei = 123;if(true){ hei = 456;}console.log(hei);// ...

  5. JS函数和变量

    JS函数和变量  函数: 函数是由事件或者当它被调用时执行的可重复使用的代码块. 是一个独立的代码块,实现特定功能模块. 函数他不进行调用触发的话,不会自己主动执行. 像ATM机一样,不去取钱的话不会 ...

  6. Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)

    一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...

  7. 从零开始的JS生活(一)——JS简介、变量及基本结构

    本K在经过三个静态站制作的狂风暴雨之后,终于开始了JavaScript的学习.作为一只从来没有正儿八经接受过计算机语言的小白,居然能够跟上浩哥的课程进度,我的内心都被我的才智震惊到了,果然本K是天生丽 ...

  8. JS中的变量和输入输出

    一.使用JS的三种方式 1.在HTML标签中,直接内嵌JS(并不提倡使用) <button onclick="alert('点你咋地')">点我</button& ...

  9. 聊一聊JS输出为[object,object]是怎么回事

    JS输出为[object object] 今天在学习ES6中的 Symbol 数据类型时,在写demo时控制台输出为 Symbol[object object] ,当时有点疑惑,查阅了相关资料后搞清楚 ...

随机推荐

  1. zoj 3659

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3659 #include<cstdio> #inclu ...

  2. setState的同步更新

    react中的setState特点: 是异步操作函数: 组件在还没有渲染之前, this.setState 还没有被调用: 批量执行 State 转变时让 DOM 渲染更快(相对比一个一个的setSt ...

  3. Eclipse Python配置

    Macbook上面安装pydev后,发现新建project后并没有PyDev的选项.在官网上搜索后发现是JDK版本太久.上Oracle官网下载了最新JDK(url: http://www.oracle ...

  4. boost库在工作(15)绑定器与函数对象之三

    前面已经可以优美地解决两个参数的函数给算法for_each调用了,但是又会遇到这样的一种情况,当需要三个参数或者三个以上的参数给算法for_each调用呢?从STL里的绑定器bind1st,显然是不行 ...

  5. 三种root的修补方式

    三种root的修补方式 system/core/adb/abd.c adbd漏洞,请看abd.c的第917行/* then switch user and group to "shell&q ...

  6. 第二篇:智能电网(Smart Grid)中的数据工程与大数据案例分析

    前言 上篇文章中讲到,在智能电网的控制与管理侧中,数据的分析和挖掘.可视化等工作属于核心环节.除此之外,二次侧中需要对数据进行采集,数据共享平台的搭建显然也涉及到数据的管理.那么在智能电网领域中,数据 ...

  7. SSL证书制作

    1.创建根证书秘钥文件(自己做CA)root.key: openssl genrsa -out root.key -aes256 2048 2.创建根证书的申请文件root.csr openssl r ...

  8. Pyhton开发【第五篇】:Python基础之杂货铺

    Python开发[第五篇]:Python基础之杂货铺   字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进 ...

  9. Python多线程锁

    [Python之旅]第六篇(四):Python多线程锁   python lock 多线程 多线程使用方法 多线程锁 摘要:   在多线程程序执行过程中,为什么需要给一些线程加锁以及如何加锁,下面就来 ...

  10. angular细节整理

    记录angularjs中比较容易忽视的问题 1.关于动态生成ui-sref的问题 ui-route中ui-sref中的路径无法动态生成的,如果要实现动态生成ui-sref路径,可以使用$state.g ...