“JavaScript”的版本间的差异

来自Wiki.Citydatum
跳转至: 导航搜索
(创建页面,内容为“{{提示|该页面仍需进一步完善,欢迎加入我们}} JavaScript(通常简写为JS),是一种高级解释型编程语言,具有动态、弱类型、…”)
 
 
(未显示同一用户的3个中间版本)
第5行: 第5行:
 
=== 组成部分 ===
 
=== 组成部分 ===
 
* ECMAScript:描述JavaScript的语法与基本对象;
 
* ECMAScript:描述JavaScript的语法与基本对象;
* [[文档对象模型]](DOM):描述处理网页内容的方法和接口;
+
* 文档对象模型([[DOM]]):描述处理网页内容的方法和接口;
 
* [[浏览器对象模型]](BOM):描述与浏览器进行交互的方法和接口;  
 
* [[浏览器对象模型]](BOM):描述与浏览器进行交互的方法和接口;  
  
第15行: 第15行:
  
 
== 上手 ==
 
== 上手 ==
 +
[https://www.sololearn.com/Course/JavaScript/ SoloLearn JavaScript课程]是非常适合初学者的交互式教程(英文,免费),以下内容是根据该课程整理的知识要点。
 +
=== 概述 ===
 +
* <script>标签:用于在页面中嵌入JavaScript脚本;可放置在<head><body>内,调用的时间有所不同,一般放在<body>末尾处;
 +
* <script>标签的属性:language、type属性,用于指定脚本语言与格式,通常不需要;src属性,用于引用外部js脚本文件;
 +
* <noscript>标签:放置需要在不支持JavaScript的浏览器中显示的内容;
 +
* 注释://单行注释;/*多行注释*/;
 +
=== 基本概念 ===
 +
* 变量
 +
** 命名规则:可包括英文字符、数字、下划线(_)、美元符号($),大小写敏感,不能以数字开头;
 +
** 变量类型:数字(number)、字符(string)、布尔(boolean);
 +
* 运算符
 +
* 逻辑运算符
 +
=== 条件与循环 ===
 +
* if
 +
* for
 +
* while
 +
* do while
 +
=== 函数 ===
 +
* 函数定义:function name(parameter1, parameter2) { code block; }
 +
* 函数调用:function name(argument1, argument2);
 +
* 三种类型的弹出框:alert(),prompt(),confirm();
 +
=== 对象 ===
 +
* 对象属性
 +
* 对象构建器
 +
* 对象方法
 +
=== 核心对象 ===
 +
* array
 +
* '''Math'''
 +
** 常见属性(数学常数):E,LN2,LN10,LOG2E,LOG10E,PI;
 +
** 常见数学对象方法:abs(x), acos(x), asin(x), atan(x), atan2(y,x), ceil(x), cos(x), exp(x), floor(x), log(x), max(x,y,z,…,n), min(x,y,z,…,n), pow(x,y), random(), round(x), round(x), sin(x), sqrt(x), tan(x);
 +
* '''Date'''
 +
** 创建日历对象:new Date(),获取包括当前日期、时间信息的对象,一经创建,不会随时间自动变化;
 +
** 日历对象方法:getFullYear(), getMonth(), getDate(), getHours(), getMinutes(), getSeconds(), getMilliseconds();
 +
=== DOM ===
 +
* '''选择HTML元素''':
 +
** document.getElementById(id):最为常用的方式,在[[jQuery]]等一些常见JS框架中,常用美元符号($)替代,以提高效率;
 +
** document.getElementByClassName(name)
 +
** document.getElementByTagName(name)
 +
* '''修改HTML元素的内容与属性''':
 +
** innerHTML:HTML元素的内容文本,可用于读取或赋值;
 +
** 元素属性名称:可用来读取或修改标签元素的属性,属性名称中包含减号(-)的,需要用驼峰大小写方式替代(camelCase);
 +
* '''创建、删除、替换HTML元素''':
 +
** element.cloneNode():复制一个要素并返回新创建的节点;
 +
** document.createElement(element):创建新元素节点;
 +
** document.createTextNode(text):创建新文字节点,但并不会显示,需要用 element.appendChild(newNode) 或 element.insertBefore(node1,node2) 附加到已有元素中;
 +
** element.removeChild(node):删除元素节点,需要选择父节点来操作;
 +
** element.replaceChild(newnode,oldnode):替换元素;
 +
* '''事件''':事件是动态页面设计的关键技术
 +
** 常见事件类型:onclick,onload,onunload,onmouseover,onmouseout,onmousedown,onmouseup,onblur,onfocus,onchange(表单元素变化的时候,如input,keygen,select,textarea);
 +
** 事件监听器(listener):可以让一个事件触发多个事件控制器函数;添加监听:element.addEventListener(event, function, useCapture);移除监听:element.removeEventListener(event, function);
 +
** 事件控制器(handler);即事件所触发的函数;
 +
** 事件传播(propagation):包括bubbling和capturing两种方式;在DOM的树状嵌套结构中,bubbling方式先处理里层元素的事件,再处理外层元素的事件,而capturing方式先处理外层元素的事件,再处理里层元素的事件;设置事件监听器时,通过useCapture属性来设定相应的方式,真为capturing,假为bubbling;
  
 
== 参考链接 ==
 
== 参考链接 ==
第20行: 第72行:
 
* [https://baike.baidu.com/item/javascript 百度百科:JavaScript]
 
* [https://baike.baidu.com/item/javascript 百度百科:JavaScript]
 
* [http://www.w3school.com.cn/jsref/index.asp W3school:JavaScript 参考手册]
 
* [http://www.w3school.com.cn/jsref/index.asp W3school:JavaScript 参考手册]
 +
 +
[[分类:编程语言]]

2018年12月7日 (五) 02:38的最新版本

TODO
提示:该页面仍需进一步完善,欢迎加入我们

JavaScript(通常简写为JS),是一种高级解释型编程语言,具有动态、弱类型、基于原型和多范式特征。HTMLCSS、JavaScript是万维网(World Wide Web)的三大核心技术。JavaScript赋予网页可交互的特性,因而成为网络应用的必要基础。大量的网站采用了JavaScript技术,所有的主流浏览器均带有专有的JavaScript解释引擎来执行脚本。

概述

组成部分

  • ECMAScript:描述JavaScript的语法与基本对象;
  • 文档对象模型(DOM):描述处理网页内容的方法和接口;
  • 浏览器对象模型(BOM):描述与浏览器进行交互的方法和接口;

应用

网页以外的其他应用

  • 嵌入的脚本语言
  • 脚本引擎
  • 应用平台

上手

SoloLearn JavaScript课程是非常适合初学者的交互式教程(英文,免费),以下内容是根据该课程整理的知识要点。

概述

  • <script>标签:用于在页面中嵌入JavaScript脚本;可放置在<head><body>内,调用的时间有所不同,一般放在<body>末尾处;
  • <script>标签的属性:language、type属性,用于指定脚本语言与格式,通常不需要;src属性,用于引用外部js脚本文件;
  • <noscript>标签:放置需要在不支持JavaScript的浏览器中显示的内容;
  • 注释://单行注释;/*多行注释*/;

基本概念

  • 变量
    • 命名规则:可包括英文字符、数字、下划线(_)、美元符号($),大小写敏感,不能以数字开头;
    • 变量类型:数字(number)、字符(string)、布尔(boolean);
  • 运算符
  • 逻辑运算符

条件与循环

  • if
  • for
  • while
  • do while

函数

  • 函数定义:function name(parameter1, parameter2) { code block; }
  • 函数调用:function name(argument1, argument2);
  • 三种类型的弹出框:alert(),prompt(),confirm();

对象

  • 对象属性
  • 对象构建器
  • 对象方法

核心对象

  • array
  • Math
    • 常见属性(数学常数):E,LN2,LN10,LOG2E,LOG10E,PI;
    • 常见数学对象方法:abs(x), acos(x), asin(x), atan(x), atan2(y,x), ceil(x), cos(x), exp(x), floor(x), log(x), max(x,y,z,…,n), min(x,y,z,…,n), pow(x,y), random(), round(x), round(x), sin(x), sqrt(x), tan(x);
  • Date
    • 创建日历对象:new Date(),获取包括当前日期、时间信息的对象,一经创建,不会随时间自动变化;
    • 日历对象方法:getFullYear(), getMonth(), getDate(), getHours(), getMinutes(), getSeconds(), getMilliseconds();

DOM

  • 选择HTML元素
    • document.getElementById(id):最为常用的方式,在jQuery等一些常见JS框架中,常用美元符号($)替代,以提高效率;
    • document.getElementByClassName(name)
    • document.getElementByTagName(name)
  • 修改HTML元素的内容与属性
    • innerHTML:HTML元素的内容文本,可用于读取或赋值;
    • 元素属性名称:可用来读取或修改标签元素的属性,属性名称中包含减号(-)的,需要用驼峰大小写方式替代(camelCase);
  • 创建、删除、替换HTML元素
    • element.cloneNode():复制一个要素并返回新创建的节点;
    • document.createElement(element):创建新元素节点;
    • document.createTextNode(text):创建新文字节点,但并不会显示,需要用 element.appendChild(newNode) 或 element.insertBefore(node1,node2) 附加到已有元素中;
    • element.removeChild(node):删除元素节点,需要选择父节点来操作;
    • element.replaceChild(newnode,oldnode):替换元素;
  • 事件:事件是动态页面设计的关键技术
    • 常见事件类型:onclick,onload,onunload,onmouseover,onmouseout,onmousedown,onmouseup,onblur,onfocus,onchange(表单元素变化的时候,如input,keygen,select,textarea);
    • 事件监听器(listener):可以让一个事件触发多个事件控制器函数;添加监听:element.addEventListener(event, function, useCapture);移除监听:element.removeEventListener(event, function);
    • 事件控制器(handler);即事件所触发的函数;
    • 事件传播(propagation):包括bubbling和capturing两种方式;在DOM的树状嵌套结构中,bubbling方式先处理里层元素的事件,再处理外层元素的事件,而capturing方式先处理外层元素的事件,再处理里层元素的事件;设置事件监听器时,通过useCapture属性来设定相应的方式,真为capturing,假为bubbling;

参考链接