javascript基础语法学习笔记


Posted in Javascript onJanuary 04, 2016

一、定义

javascript是一门用来增强页面动态效果,实现页面与用户之间的实时、动态交互的脚本语言(解释型编程语言)。javascript由三部分组成:ECMA、DOM和BOM

[1]ECMAScript由ECMA-262定义,提供核心语言功能(ECMA是欧洲计算机制造商协会)

[2]DOM文档对象模型,提供访问和操作网页内容的方法的接口

[3]BOM浏览器对象模型,提供与浏览器交互的方法的接口 

二、引入

引入javascript有两种办法:在页面内嵌入js代码和引入外部文件

[1]页面内嵌入

<script>
  alert("My First JavaScript");
</script>

[2]引入外部js文件

[注意]带有src属性的<script>元素不应该在其<script>标签之间再包含额外的js代码,如果包含了嵌入的代码,则只会下载并执行外部脚本,而忽略嵌入的代码

<script src="myScript.js"></script>

<script>

无论哪种引入方法,都需要利用<script>标签。<script>标签共用6个属性,其中language属性已经废弃

[1]src:表示包含要执行代码的外部文件,该文件可以跨域

[2]charset:可选,表示通过src属性指定的代码的字符集,大多数浏览器会忽略

[3]defer:可选,表示脚本可以延迟到文档完全被解析和显示之后再执行,只对外部脚本有效

[4]async:可选,表示应该立即下载脚本,但不妨碍页面的其他操作。只对外部脚本有效

[5]type:可选,是language的替代属性,表示编写代码使用的脚本语言的内容类型,也称为MIME类型。考虑到兼容,一般还是text/javascript,若不指定,默认值也是text/javascript

[6]language:已废弃 

async和defer

[1]如果async和defer都不设置,浏览器会立即加载并执行指定的脚本

<script src="test.js"></script>
[2]如果只设置async,浏览器会异步下载脚本,不阻塞页面的其他操作

[注意]异步脚本一定会在页面的load事件前执行

<script src="test.js" async></script>
[3]如果只设置defer,脚本会被延迟到文档完全被解析和显示后再执行

<script src="test.js" defer></script> 

注释

注释可以提高代码可读性,帮助自己和别人阅读和理解Javascript代码,注释的内容不会在网页中显示,分为单行注释和多行注释两种

//单行注释
/*
多行注释
 */

忽略空格

JavaScript会忽略多余的空格,可以向脚本添加空格,来提高其可读性

//以下写法均正确
var name="hello";
var name ="hello";
var name = "hello";

代码折行

可以在文本字符串中使用反斜杠对代码行进行换行

//正确
document.write("Hello \
World!");
//错误
document.write \
("Hello World!");

大小写敏感

JavaScript的变量、函数名和操作符都区分大小写。函数getElementById与getElementbyID不同,同样,变量myVariable与MyVariable也是不同的

保留字和关键字

ECMA-262描述了一组具有特定用途的关键字,这些关键字用于表示控制语句的开始或结束,或用于执行特定操作等;ECMA-262还描述了另外一组不能用作标识符的保留字,它们将来有可能成为关键字。

javascript基础语法学习笔记

//第5版在非严格模式下的保留字
Class | enum | extends | super | const | export | import 
//第5版在严格模式下的保留字
Implements | package | public | interface | private | static | let* | protected | yield*
Javascript 相关文章推荐
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
Nov 30 Javascript
JQuery autocomplete 使用手册
Apr 01 Javascript
jquery仿搜索自动联想功能代码
May 23 Javascript
如何使用jQuery技术开发ios风格的页面导航菜单
Jul 29 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
Jul 31 Javascript
JQuery学习总结【二】
Dec 01 Javascript
jQuery仿IOS弹出框插件
Feb 18 Javascript
Angular Material Icon使用详解
Nov 07 Javascript
jQuery实现每日秒杀商品倒计时功能
Sep 06 jQuery
JS判断浏览器类型与操作系统的方法分析
Apr 30 Javascript
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
May 26 Javascript
基于Vue CSR的微前端实现方案实践
May 27 Javascript
封装好的javascript前端分页插件pagination
Jan 04 #Javascript
详解javascript的变量与标识符
Jan 04 #Javascript
bootstrap实现弹窗和拖动效果
Jan 03 #Javascript
基于javascript实现窗口抖动效果
Jan 03 #Javascript
理解jquery事件冒泡
Jan 03 #Javascript
实例讲解避免javascript冲突的方法
Jan 03 #Javascript
详解js中class的多种函数封装方法
Jan 03 #Javascript
You might like
PHP里的中文变量说明
2011/07/23 PHP
解析PHP汉字转换拼音的类
2013/06/18 PHP
ThinkPHP之foreach标签使用概述
2014/06/30 PHP
如何使用GDB调试PHP程序
2015/12/08 PHP
PHP模板引擎Smarty内置变量调解器用法详解
2016/04/11 PHP
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
js中获取事件对象的方法小结
2011/03/13 Javascript
js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
2011/10/31 Javascript
html文件中jquery与velocity变量中的$冲突的解决方法
2013/11/01 Javascript
JsRender实用入门教程
2014/10/31 Javascript
JS控制层作圆周运动的方法
2016/06/20 Javascript
jQuery中checkbox反复调用attr('checked', true/false)只有第一次生效的解决方法
2016/11/16 Javascript
基于JavaScript实现的顺序查找算法示例
2017/04/14 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
2017/07/24 Javascript
Vue侦测相关api的实现方法
2019/05/22 Javascript
vue实现前台列表数据过滤搜索、分页效果
2019/05/28 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
Layui给switch添加响应事件的例子
2019/09/03 Javascript
使用JS来动态操作css的几种方法
2019/12/18 Javascript
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
2020/11/20 Vue.js
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
Python实现Linux下守护进程的编写方法
2014/08/22 Python
合并百度影音的离线数据( with python 2.3)
2015/08/04 Python
django项目运行因中文而乱码报错的几种情况解决
2017/11/07 Python
深入浅析python with语句简介
2018/04/11 Python
Flask模拟实现CSRF攻击的方法
2018/07/24 Python
python numpy中cumsum的用法详解
2019/10/17 Python
纽约著名的服装辅料来源:M&J Trimming
2017/07/26 全球购物
三星英国官网:Samsung英国
2018/09/25 全球购物
Rentalcars.com中国:世界上最大的在线汽车租赁服务
2019/08/22 全球购物
小学生期末自我鉴定
2014/01/19 职场文书
带病坚持工作事迹
2014/05/03 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
交通违章检讨书
2014/09/21 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
排查MySQL生产环境索引没有效果
2022/04/11 MySQL