Java 和JavaScript 虽然名称相似,但却有很大差别。JavaScript 是由Netscape 工程师Brendan Eich 于1995 年仅花10 天所设计的编程语言,也因为一些历史因素,JavaScript 成为被误解最深的编程语言。JavaScript 是一种解释性语言。其具备简单好上手、应用范围广泛,但精通不易等特性。过去一段时间JavaScript 一直被认为是玩具语言,难登大雅之堂。但随着版本的演进,再加上NodeJS 的出现,让JavaScript 由黑翻红成为编程语言的当红巨星,目前雄据在编程语言排行榜前几名,除了网页开发外,在许多的领域都可以看到JavaScript 的身影。本文将快速带领大家掌握JavaScript 重要且核心的观念。
JavaScript的代码只要使用一般的文字编辑器即可编辑(存成.js文件),也可以使用Sublime Text等编辑器进行开发,JSBin这个线上工具进行测试(当然你也可以使用Chrome、Firefox等浏览器的开发者工具)。除了编辑器外,实际开发上我们也会需要用到Node.js开发环境和NPM套件管理系统(按照Node.js官方指示即可安装)。Node.js是一个开放源码、跨平台的、可用于服务器端和网路应用的执行环境。
<head></head>
(因JS解释性程式语言,读到即会执行)
<head> <script> alert(Hello JavaScript); </script> </head>
<body></body>
之中(可以让HTML优先载入)
<body> <script> alert(Hello JavaScript); </script> </body>
<head>
或<body>
内(推荐使用)
<script src="js/main.js"></script>
注意外部引入的<script></script>
中不可再写JS。
在编程语言中变量是一个暂时存储数据的地方,赋值给变量的值都会有对应的类型,然而JavaScript 是弱类型(Weak type)所以会有自动转型的情形。
在JavaScript中,全局变数将使用var
,而在ES6中为了解决变量误用情形将block-scope
的变量使用let
,若你需要固定不变的常数则是使用const
。其中变量类型又分为:Primitive Data Type:String、Number、Boolean( true或false)、undefinded、null,Reference Data Types:Object两种,差别在于将实体对象变量赋值给另外一个比纳凉时是把引用赋值给新变量,所以当新变量更改属性时会影响到原来对象属性。
Primitive Data Type:
var num = 12;
const str = 'Mark';
function checkLike() {
let isActived = true;
}
console.log(num);
console.log(str);
console.log(isActived);
Reference Data Types:
let a = { name: 'Zuck' };
console.log(a);
let b = a;
b.name = 'Jack';
console.log(a);
在编程语言中都需要运算符,在JavaScript 中有赋值运算符、算数运算符、比较运算符、逻辑运算符等不同运算符。
=
给定值给变量
// Mark const name = 'Mark';
在JavaScript中和许多编程语言一样有if...else
、switch
条件判断以及在处理数组上很常使用的循环(当有明确次数时使用for
,当没有明确数字时使用while
)
另外要注意的是在JavaScript中的falsey值:undefined
、null
、NaN
、0
、""
(空字串)和false
,以上几种情况在逻辑判断时会转换成false