一)概述

JavaScript是一个面向web的编程语言,一种解释性语言,边执行边解释。也是一种基于对象(Object)和事件驱动(EventDriven)的,安全性好的脚本语言,语法和java类似。一般用来编写客户端脚本,运行在客户端,从而减轻服务器端的负担。

前端开发工程师必须掌握的三种技能之一:

描述网页内容的HTML、描述网页样式的CSS以及描述网页内容的JavaScript。

它主要使HTML静态页面变成动态操作。废话不多说,接下来对JavaScript进行剖析,细节的话,之后的文章会讲到。

二)JavaScript的基本数据类型

1.原始类型(不可变):
字符串 String
数字 Number
布尔 Boolean

2.对象数据类型(可变):
数组 Array(特殊)
对象 Object

注释:JavaScript中最重要的数据类型就是数组和对象。
3.特殊原始类型:
Null 空对象
Undefined 未定义

注意:  Null与ndefined的区别?

null 表示无值,而 undefined 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。

三)展示JavaScript语言核心特性

1.如何在文档中查找元素?

2.如何通过表单input元素来获取用户的输入数据?

3.如何通过文档元素来设置HTML内容?

4.如何将数据存储在浏览器中?

5.如何使用脚本发起HTTP请求?

6.如何利用<canvas>元素绘图?

四)构造函数

如果函数用来初始化(使用new运算符)一个新建对象,我们称之为构造函数。

其中JavaScript语言核心定义了三种有用的类:

日期类:代表日期的对象。

正则类:表示正则表达式。

错误类:JavaScript程序中运行时错误和语法错误的对象。

 五)需要掌握的知识点

1.词法结构

注释、变量、标识符、保留字

2.类型、值、变量

运算符、日期和时间、字符串(文本)、基本数据类型、类型转换、表达式

3.object对象

属性、JSON(数据格式)

4.函数

嵌套函数、传参

5.正则表达式

直接量字符、字符类、重复字符、锚字符、修饰符

提示:正则表达式是一个描述字符模式的对象。

6.服务器端JavaScript

解释器、HTTP服务器

7.客户端JavaScript

html动态、<script>元素、脚本类型、URL、Web浏览器、jquery框架

8.window对象

浏览器窗口(相当于一个框架)的定义

9.DOM文档对象模型

文档元素和属性

10.BOM浏览器对象模型

浏览器属性和行为

注意:JavaScript的BOM和DOM有什么区别?

BOM是浏览器对象模型,用来获取或设置浏览器的属性、行为,例如:新建窗口、获取屏幕分辨率、浏览器版本号等。
DOM是文档对象模型,用来获取或设置文档中标签的属性,例如获取或者设置input表单的value值。
BOM的内容不多,主要还是DOM。
由于DOM的操作对象是文档(Document),所以dom和浏览器没有直接关系。

11CSS

复合属性、样式、属性值

12.事件处理

事件类型、Ajax技术

六)全局对象

全局对象在JavaScript中有着重要的用途:

全局对象的属性是全局定义的符号,JavaScript程序可以直接使用。

当JavaScript解释器启动时(或者任何Web浏览器加载新页面的时候),它将创建一个新的全局对象,

并给它一组定义的初始属性:

1.全局属性:比如undefined、Infinity和NaN。

2.全局函数:比如isNaN()、parseInt()。

3.构造函数:比如Date()、RegExp()、String()、Object()和Array()。

4.全局对象:比如Math和JSON。

七)语句

1.条件语句:JavaScript解释器可以根据一个表达式的值来判断是执行还是跳过这些语句,

如if语句和switch语句。

2.循环语句:可以重复执行语句,如while和for语句。

3.跳转语句:可以让解释器跳转至程序的其他部分继续执行,如break、return、continue和throw语句。

4.声明语句:声明新变量或定义新函数。

5.表达式语句:赋值和函数调用这些有副作用的表达式来作为单独的表达式(把表达式当做语句)。

6.复合语句:多条语句联合在一起。

7.空语句:包含0条语句。

八)属性特性

1.可写:表明是否可以设置该属性的值。

2.可枚举:表明是否可以通过for/in循环返回该属性。

3.可配置:表明是否可以删除或修改该属性。

九)对象特性

1.对象的原型:指向另外一个对象,本对象的属性继承自它的原型对象。

2.对象的类:是一个标识对象类型的字符串。

3.对象的扩展标记:指明了是否可以向该对象添加新属性。

十)正则表达式的定义

1.用RegExp对象表示正则表达式。

提示:它是对字符串执行模式匹配的强大工具。

2.RegExp对象中有RegExp属性。

3.RegExp对象定义了RegExp的方法。

十一)选择文档元素

1.用指定的ID属性。

2.用指定的name属性。

3.用指定的标签名字。

4.用指定的css类。

5.匹配指定的css选择器。

十二)JavaScript 事件参考手册

这只是让大家知道什么是JavaScript,需要掌握什么知识,这篇我只是将我知道的知识点粗讲一下,

以后会细讲的,还是希望大神多指点!

JavaScript学习(零)前引的更多相关文章

  1. Javascript学习6 - 类、对象、继承

    原文:Javascript学习6 - 类.对象.继承 Javasciprt并不像C++一样支持真正的类,也不是用class关键字来定义类.Javascript定义类也是使用function关键字来完成 ...

  2. javascript学习日志:前言

    javascript学习日志系列的所有博客,主要理论依据是<javascript权威指南>(犀牛书第6版)以及<javascript高级程序设计第三版>(红色书),目前js行业 ...

  3. JavaScript学习(1)之JavaScript基础

    JavaScript学习(1)之JavaScript基础 由于工作原因,开发语言逐渐以JavaScript为主,所以,抽空学习了下JavaScript语法.等现阶段的工作稳定之后,陆续会分享下自己在学 ...

  4. JavaScript学习记录四

    title: JavaScript学习记录四 toc: true date: 2018-09-16 20:31:22 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  5. JavaScript学习记录二

    title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  6. JavaScript学习记录一

    title: JavaScript学习记录一 toc: true date: 2018-09-11 18:26:52 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  7. JavaScript学习12 JS中定义对象的几种方式

    JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...

  8. JavaScript学习基础部分

    JavaScript学习基础 一.简介 1.JavaScript 是因特网上最流行的脚本语言,并且可在所有主要的浏览器中运行,比方说 Internet Explorer. Mozilla.Firefo ...

  9. JavaScript学习总结(二)

    JavaScript学习总结(二) ---- 对象 在JavaScript中,几乎用到的每个js都离不开它的对象.下面我们深入了解一下js对象. js中对象的分类跟之前我们学过的语言中函数的分类一样, ...

  10. Javascript学习1 - Javascript中的类型对象

    原文:Javascript学习1 - Javascript中的类型对象 1.1关于Numbers对象. 常用的方法:number.toString() 不用具体介绍,把数字转换为字符串,相应的还有一个 ...

随机推荐

  1. OpenGL ES 3.0: 图元重启(Primitive restart)

    [TOC] 背景概述 在OpenGL绘制图形时,可能需要绘制多个并不相连的图形.这样的情况下这几个图形没法被当做一个图形来处理.也就需要多次调用 DrawArrays 或 DrawElements. ...

  2. POJ1149 PIGS [最大流 建图]

    PIGS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 20662   Accepted: 9435 Description ...

  3. 开源一个WEB版本GEF,基于SVG的网页流程图框架

    8月开始断断续续的制作这个web gef,没有任何依赖,完全原生js开发,目前已经完成了雏形,基本上可以在项目里应用了. 下图展示的是demo1的效果,包括拖拽,生成连线,点击生成\取消墙体,整个de ...

  4. Vue.js——vue-router 60分钟快速入门

    概述 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用.vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来.传统的 ...

  5. 前端构建大法 Gulp 系列 (一):为什么需要前端构建

    系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...

  6. C#中,双屏/两屏/三屏/多屏跳转判断

    之前伤脑筋写过一次在Web中,JS,ActiveXObject去读取显示器数量.分辨率去判断单双屏跳转. 那么在客户端中,用C#去读取硬件信息,更方便更容易! 思路参考代码: ) { //此显示器是否 ...

  7. 气泡 弹出 bootstrap-popover的配置与灵活应用

    <script src="/assets/addons/bootstrap-select/bootstrap-select.min.js"></script> ...

  8. Linux命令:ps,netstat,top

    ps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...

  9. static,你还敢用吗?

    我用火狐的HttpRequester测试开发组里一个同学发布的Web API接口,遇到了一个奇怪的问题. 我测试边界情况时,第一次调用响应的结果是正常的,但当再次及以后的请求时,却返回了异常“Syst ...

  10. Failure to find xxx in xxx was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced @ xxx

    问题: 在linux服务器上使用maven编译war时报错: 16:41:35 [FATAL] Non-resolvable parent POM for ***: Failure to find * ...