《Dom Scripting》学习笔记

第二章 Javascript语法

本章内容:

1、语句。

2、变量和数组。

3、运算符。

4、条件语句和循环语句。

5、函数和对象。

语句(statements

注释(comments

方法:

1、// Note to self: comments are good.

2、/* Note to self:
comments are good */

3、<!— This is
a comment in JavaScript.

(In HTML, you would need to close the comment with —>:
<!— This is a comment in HTML —>)

变量(variables

声明(declare)变量:

1、 
var mood;
       var age;

2、 
var mood, age;

声明变量并赋值(assignment):

1、 
var mood =
"happy";
       var age = 33;

2、  var mood = "happy", age = 33;(最有效的方法)

3、 
var mood, age;
       mood = "happy";
       age = 33

变量的数据类型(Data types

一、字符串(strings

格式:用单引号或双引号包含字符串内容。

var mood = 'happy';
var mood = "happy";

防止字符串逃逸(escaping)的方法:

var mood = 'don\'t ask';

var height = "about 5'10\" tall";

二、数值(numbers


三、布尔值

取值:true或false

区分字符串“true”与布尔值true:

This
will set the variable married to the Boolean value true:
var married = true;
In this case, married is a string containing the word “true”:
var married =“true”

四、数组

由名字相同的多个值构成的一个集合,集合中每个值都是数组的元素。

一、声明、填充数组的方法:

1、

var beatles = Array(4);
beatles[0] = "John";
beatles[1] = "Paul";
beatles[2] = "George";
beatles[3] = "Ringo";

2、

var beatles =
Array("John","Paul","George","Ringo");

3、

var beatles =
["John","Paul","George","Ringo"];

二、数组的元素种类

字符串、数值、布尔值、变量、数组

var lennon = Array("John",1940,false);
var beatles = Array();
beatles[0] = lennon;

三、关联数组

元素下标不是整数数字,是字符串。可以提高脚本可读性。

var beatles = Array();
beatles["vocalist"] = lennon

操作

算数运算符

+

将数值和字符串相加会得到字符串

alert ("10" + 20);//1020
alert (10 + 20);//30

条件语句

 if (condition) {
     statements;
     }

条件的求值结果永远是一个布尔值,花括号中的语句,只有在给定条件的求职结果是true时才会得到执行。

比较操作符:===、!=

逻辑操作符:&&(与)、||(或)、!(非)

循环语句

While

while (condition) {
statements;
}

do…while

 do {
statements;
} while (condition);

for

for (initial condition; test condition; alter condition) {
statements;
}

等同于

initialize;
while (condition) {
statements;
increment;
}

函数

定义函数

function name(arguments) {
statements;
}

函数返回值:数值、字符串、数组、布尔值

变量作用域(scope

 全局变量(global variable

 局部变量(local variable

 如果在某个函数中使用了var,那个变量就是一个局部变量,它将只存在于这个函数的上下文中;若没有使用var,那么就是一个全局变量。如果脚本中存在一个与之同名的变量,这个函数将覆盖那个现有的值。

function square(num) {
total = num * num;
return total;
}
var total = 50;
var number = square(20);
alert(total);

//弹出400

function square(num) {
var total = num * num;
return total;
}
var total = 50;
var number = square(20);
alert(total);

//弹出50

 

对象(objects

对象是自我包含的数据集合,包含在对象里的数据可以通过属性和方法两种方式访问。

属性(properties):是隶属于某个特定对象的变量。

方法(methods):是只有某个特定对象才能调用的函数。

用户定义对象(user-defined
objects
)。

内建对象(native objects)。

宿主对象(host objects):js中一些已经预先定义好的对象,不是由js语言本身而是由它的运行环境提供的,就是各种web浏览器。由web浏览器提供的预定义对象成为宿主对象。

整理的思维导图:

《DOM Scripting》学习笔记-——第二章 js语法的更多相关文章

  1. JavaScript DOM编程艺术学习笔记-第二章JavaScript语法

    一.JavaScript示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  2. The Road to learn React书籍学习笔记(第二章)

    The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...

  3. [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”

    [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...

  4. 第二章 Js语法

    来博客园已经有二年了,看了看自己发布的内容,少的可怜.完全背离了自己的初衷.how time fly,想着自己两年后,还是没写什么东西,岂不是白白浪费时间!有感于王宝强说的那句话,“好好活着,做有意义 ...

  5. c#高级编程第七版 学习笔记 第二章 核心c#

    第二章 核心C# 本章内容: 声明变量 变量的初始化和作用域 C#的预定义数据类型 在c#程序中使用条件语句.循环和跳转语句执行流 枚举 名称空间 Main()方法 基本的命令行c#编译器选项 使用S ...

  6. [HeadFirst-JSPServlet学习笔记][第二章:高层概述]

    第二章:高层体系结构 容器 1 什么是容器? servelet没有main()方法.它们受控于另一个Java应用,这个Java应用称为容器(Container) Tomcat就是这样一个容器.Web服 ...

  7. 《Python基础教程(第二版)》学习笔记 -> 第二章 列表和元组

    本章将引入一个新的概念:数据结构. 数据结构是通过某种方式阻止在一起的数据元素的集合,这些数据元素可以是数字或者字符,设置可以是其他数据结构. Python中,最基本的数据结构是序列(Sequence ...

  8. Java 学习笔记 ------第二章 从JDK到IDE

    本章学习目标: 了解与设定PATH 了解与指定CLASSPATH 了解与指定SOURCEPATH 使用package与import管理类别 初步认识JDK与IDE的对应关系 一.第一个Java程序 工 ...

  9. JavaScript高级程序设计学习笔记第二章

    1.向 HTML 页面中插入 JavaScript 的主要方法,就是使用<script>元素 2.HTML 4.01中定义了<script>元素的六个属性(方便记忆,可将6个属 ...

随机推荐

  1. 判断手机是安卓还是ios

    let ORZ = function() { if(!(this instanceof ORZ)) { return new ORZ; }}ORZ.prototype = { // 判断用户手机是An ...

  2. SONObjetc和String Map Bean互转,JSONArray和String List互转

    import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; i ...

  3. GAN 教程记录

    目标:使G产生的分布sample出来接近D的分布 1.G产生的data是否是database中的图片 a.计算L1 L2相似度 2.GAN与其他生成器相比较,能够生成较为清晰的图片 3.一次itera ...

  4. DataTable与DataSet之间的转换Class

    using System;using System.Collections.Generic;using System.Data;using System.Linq; namespace Convert ...

  5. Centos7.3 之mysql5.7二进制安装

    #!/bin/bash #注意,该脚本是在centos7.3非生产环境下测试的,其他版本的系统可能不适用,要根据情况修改.需要先下载好mysql二进制包到本地(我一般都是在root家目录下操作,文件也 ...

  6. Python的深copy和浅copy

    浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象. 深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象. 浅copy: a = [1, 2, ...

  7. Python脚本模拟僵尸进程与孤儿进程

    最近一台机器的systemd内存高达30%多,一直不变,后来排查是僵尸进程,什么是僵尸进程呢,只能google,百度等先了解,然后自己总结了一下,虽然这是基础的东西,但是对于我来说就如新大陆一样.花了 ...

  8. DHCP Option43配置

    在配置Option 43之前,需要保证:1. AP与DHCP服务器之间路由可达,即AP可以获取到IP地址.2. AP与AC之间路由可达,保证AP获取到AC地址后,能够与AC交互信息,建立CAPWAP隧 ...

  9. 前段开发神奇webstorm安装注册和汉化

    软件下载地址: http://www.jetbrains.com/webstorm/ 安装完后退出. 重新打开,进行激活 这里我们选择“license server”然后输入:http://idea. ...

  10. 为嵌入式mplayer移植添加ALSA音频驱动(全志V3s荔枝派zero)

    首先准备mplayer和alsa_lib,我的是bulidroot添加后编译自动下载的,版本分别是alsa-lib-1.1.4.1和mplayer-1.3.0. 首先编译alsa_lib: ./con ...