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. 【行业干货】ASOS:外来快时尚品牌的入华战 - 行业干货 - 京东内部论坛 - Powered by Discuz!

    [行业干货]ASOS:外来快时尚品牌的入华战 - 行业干货 - 京东内部论坛 - Powered by Discuz! [行业干货]ASOS:外来快时尚品牌的入华战

  2. 金牌分析师助力 鲁泰A图谋再造一个“鲁泰”?_财经_中国网

    金牌分析师助力 鲁泰A图谋再造一个"鲁泰"?_财经_中国网 金牌分析师助力 鲁泰A图谋再造一个"鲁泰"?

  3. hdoj 1711 Number Sequence【求字串在母串中第一次出现的位置】

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  4. pl sql developer登陆界面找不到oracle数据库选项

    window 64位的操作系统 装的数据库win64_11gR2的数据库,PL SQL是PLSQL Developer 7.1.5最后是下载了一个instantclient_11_2包将你数据库安装路 ...

  5. makeKeyAndVisible的作用

    [self.window makeKeyAndVisible]; 这个是便捷方法,去使被使用对象的主窗口显示到屏幕的最前端.你也可以使用hiddenUIView方法隐藏这个窗口

  6. [PWA] 8.Unobtrusive update: Delete old cache and only keep one, hard refresh to let new SW to take control

    So once you modify the code, service worker will auto create a new one and it won't take control ove ...

  7. 今日推荐(三)AndroidResideMenu类似QQ侧滑效果

    效果图: DEMO 本代码即是DEMO,您可以下载后选择您喜欢的IDE运行.SDK版本建议使用4.0以上 Version Migration 从 v1.0, v1.1, v1.2, v1.3 升级到  ...

  8. yii 验证码那点事儿

    今天要使用yii验证码, 不过, 这个验证码是整站通用的, 也就是说, 有个表单的提交是使用ajax方式来提交, 整站, 不管在哪个地方, 都能点出来此窗口, 来提交信息 关于yii验证码, fram ...

  9. iOS国际化支持

    写给自己看: 1.先创建一个国际化文件,用于描述在不同的区域环境,显示不同的value.文件名必须是Localizable.strings,文件的内容稍后再写.

  10. QT pro文件解析

    在QT中使用qmake自动生成pro文件,如果要自己定制工程选项,则需要自行修改pro文件. pro文件有以下关键字:TEMPLATE.TARGET.DESTDIR.DEPENDPATH.INCLUD ...