JavaScript 入门教程三 语言基础【1】
一、基本介绍
1、JavaScript 是一种区分大小写的语言。(var Hello 与 var hello 是不同的变量)
2、JavaScript 中标志符就是指变量、函数、属性的名字,或者函数的参数。它的命名规则是:首字符必须是英文字母、下划线或者 $ 符号。接下来的字符可以是英文字母、下划线或者 $ 符号或者数字(多了数字)。建议全部用英文定义,而且按照惯例使用驼峰大小写格式,即第一个字母小写,剩下每个单词的首字母大写。(譬如:myFirstScript)
3、JavaScript 支持两种注释方式:即 // 型和 /* .... */ 型。
4、JavaScript 中的语句以一个分号结尾,当然不写分号也不会出错,但是从压缩、易读以及性能角度看加上最好。
5、对于多条语句的组合建议放到一个 {} 中,而且在控制语句中,即使就一条语句,加上 {} 使得代码更加清晰易读。
if(i > 0)
{ return true ; }
6、JavaScript中有一些关键字是不能用作标志符的。鉴于有太多关键字而且关键字都是小写的,可以在定义标志符的时候包含一个大写字母。(譬如: typeof 是关键字,但是 typeOf 就可以作为标志符使用了)
二、变量
1、JavaScript 的变量是松散类型的,即可以保存任意类型的数据。定义变量时使用 var 操作符,后面跟一个变量名,例如:
var message; (只声明,未初始化的变量,会保存一个特殊的值 undefined)
var message1 = "Hello Word!"; (声明并初始化变量,保存一个字符串值 “Hello Word!”)
但是 messge1 并不会被标记为 字符串类型,初始化仅仅是给这个变量赋了一个值而已。我们还可以接着这样操作:
message1 = 5;
这样的操作在 JavaScirpt 中完全可以,而且不会报错误。但是不推荐这么做。
2、 JavaScript 变量根据作用域的不同分为局部变量以及全部变量。
在一个函数内通过 var 操作符定义的变量,在当前函数体内属于局部变量。但是未通过 var 操作符定义的变量,就相当于全局变量。例如:
var message = "message";
function test(){
var message1 = "message1";
message2 = "message2"; //(不推荐)
alert(message); // 合法
alert(message1); // 合法
alert(message2); // 合法
}
test(); //必须写在 alert(message2) 前面,否则无效。
alert(message); // 合法
alert(message1); // 不合法
alert(message2); // 合法
我们可以看到 message2 可以在函数外部引用,但是我们不推荐这种写法,因为他难以维护而且容易引起其他不必要的混乱。
3、在使用严格模式的情况下 必须添加 var 操作符,否则会报无法找到定义的错误。(“use strict”;)
三、数据类型
1、JavaScipt 中有五种基本数据类型:Undefined、Null、Boolean、Number、String。一种复杂类型:Object。
2、由于 JavaScript 的变量是松散类型的,因此需要一个方法来检测当前变量存储值的类型:typeof。对一个变量使用 typeof 操作符可能返回的字符串为以下六种:
undefined 这个变量未定义
boolean 这个变量存储的是布尔值
string 这个变量存储的是字符串
number 这个变量存储的是数值
object 这个变量存储的是对象或者null
function 这个变量存储的是个函数
3、可以看到六种数据类型返回五种字符串,其中 Null 和 Object 返回的一样是 “object”, 函数作为一种特殊的对象,单独返回 “function” 以便于与其他对象区分。
JavaScript 入门教程三 语言基础【1】的更多相关文章
- JavaScript 入门教程四 语言基础【2】
一.数据类型介绍: undefined null NaN 1.判断当前变量是否为 undefined: if (i === undefined) 或者 if (typeof (i) === " ...
- JavaScript 入门教程四 语言基础【3】
一.数据类型介绍: String 1.是使用 Unicode 字符组成的字符序列.所以可以容纳各种语言. 2.字符串可以使用双引号(“”)或者单引号('')表示,但必须成对出现. 3.转移序列使用 \ ...
- Java入门教程二(语言基础)
常量与变量 常量值又称为字面常量,它是通过数据直接表示 常量 实型常量值 Java 的实型常量值主要有如下两种形式 十进制数形式:由数字和小数点组成,且必须有小数点,如 12.34.-98.0 科学记 ...
- 无废话ExtJs 入门教程三[窗体:Window组件]
无废话ExtJs 入门教程三[窗体:Window组件] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3 ...
- Swift语言指南(三)--语言基础之整数和浮点数
原文:Swift语言指南(三)--语言基础之整数和浮点数 整数 整数指没有小数的整数,如42,-23.整数可以是有符号的(正数,零,负数),也可以是无符号的(正数,零). Swift提供了8,16,3 ...
- ArcGIS API for JavaScript 入门教程[0] 目录
随时翻看. 转载注明出处,博客园/CSDN/B站:秋意正寒. Part 1 必看 ArcGIS API for JavaScript 入门教程[1] 渊源 你还真不一定知道这是啥.非得学吗? ArcG ...
- PySide——Python图形化界面入门教程(三)
PySide——Python图形化界面入门教程(三) ——使用内建新号和槽 ——Using Built-In Signals and Slots 上一个教程中,我们学习了如何创建和建立交互widget ...
- Elasticsearch入门教程(三):Elasticsearch索引&映射
原文:Elasticsearch入门教程(三):Elasticsearch索引&映射 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文 ...
- RabbitMQ入门教程(三):Hello World
原文:RabbitMQ入门教程(三):Hello World 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog. ...
随机推荐
- javascript基础06
javascript基础06 splice var del_arr = del.splice(0,2); //删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返 ...
- mediastreamer使用教程
mediastreamer使用教程 1.各个函数功能简介 ms_filter_destroy 释放filter资源 ms_ticker_destroy释放ticker 说明:ticker为定时器线程, ...
- display_inline-block_table-cell
1.display:inline-block; 兼容性:兼容到IE7+,Chrome,Firefox html: <ul class="list"> <li> ...
- 【krpano】高德地图导航插件(源码+介绍+预览)
简介 krpano可以利用js调用第三方网页版地图,因此可以实现导航效果,用来帮助用户导航到我们全景所在的位置. 效果截图如下,在手机端点击左侧按钮,便会对用户进行定位,跳转至高德地图进行导航 ...
- day3
程序1: 实现简单的shell sed替换功能 ]new = sys.argv[]file_name = sys.argv[]tmp_file ="tmpfile"open(tmp ...
- 1.go的Hello
新建hello.go 内容: package main import ( "fmt" ) func main() { fmt.Println("Hello liuyao& ...
- iOS开发UI篇—CAlayer层的属性
iOS开发UI篇—CAlayer层的属性 一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property ...
- C++ explicit关键字详解
本文系转载,原文链接:http://www.cnblogs.com/ymy124/p/3632634.html 首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用 ...
- 几年前做家教写的C教程(之四专讲了指针与汉诺塔问题)
C语言学习宝典(4) 指针:可以有效的表示复杂的数据结构,能动态的分配动态空间,方便的使用字符串,有效的使用数组,能直接处理内存单元 不掌握指针就没有掌握C语言的精华 地址:系统为每一个变量分配一个内 ...
- 简单理解Socket
题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人:但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有 ...