《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. 王者荣耀交流协会第5次Scrum立会

    开会时间:2017年10月31日下午18:00-18:31  共计31分钟 开会地点:一食堂二楼靠近窗户倒数第四排 今日完成工作进度: 王超同学完成了将生成饼状图原型整合到程序中 立会内容: 添加了新 ...

  2. IC卡T0协议中的过程字与状态字

    T0协议中,IC卡收到命里头以后向TTL回传过程字或状态字SW1.SW2: TTL和IC卡在二者之间的命令和数据交换的任何时刻都必须知道数据流的方向和IO线路由谁驱动. 摘录参考:<中国金融集成 ...

  3. SQL-记录修改篇-008

    修改记录: update table_name  as  a set  a.type = ‘青年' where a.age>18  and  a.age<40 解释:将表中age字段大于1 ...

  4. 什么是web前端开发?

    Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript/Flash等各种Web技术进行客户端产品的开发.完成客户端程序(也就是浏览器端)的开发,开发JavaScript以及F ...

  5. Python调用ffpmeg和ffprobe处理视频文件

    需求: 运营有若干批次的视频.有上千个,视频文件,有mp4格式的,有ts格式的 现在有需要去掉视频文件片头和片尾的批量操作需求. 比如 文件夹A下面的视频去掉片尾10秒 文件夹B下面的视频去掉片头6秒 ...

  6. zabbix性能优化记

    以前用zabbix,都是简简单单的把服务端.客户端一搭,模板监控项一弄就完了.没怎么真正去弄过优化啊之类的.现在有个场景就是获取zabbix的数据贼慢,得对zabbix进行优化,开始动手分析一下.   ...

  7. C166 -MDH

    Writing a C logic for moving MDH register contents after MUL instruction   http://www.keil.com/forum ...

  8. MySQL Point in Time Recovery the Right Way

    In this blog, I’ll look at how to do MySQL point in time recovery (PITR) correctly. Sometimes we nee ...

  9. 《精通python网络爬虫》笔记

    <精通python网络爬虫>韦玮 著 目录结构 第一章 什么是网络爬虫 第二章 爬虫技能概览 第三章 爬虫实现原理与实现技术 第四章 Urllib库与URLError异常处理 第五章 正则 ...

  10. DotNetBar中Supergrid显示树形数据

    1.向窗体中拖一个Supergrid控件 2.添加列ID,NAME,MATH,CN,SEX 3.在任务窗格中勾选“Show Tree Lines”和“Show Tree Buttons” 4.添加数据 ...