JS 输出与变量

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);

原文链接: https://www.cnblogs.com/Daniel-Liang/p/5923331.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/241439

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午9:33
下一篇 2023年2月13日 下午9:33

相关推荐