JS的基本概念
JS的基本概念
任何语言的核心都必然会描述这门语言最基本的工作原理。而描述的内容通常都要涉及这门语言的语法,操作符,数据类型,内置功能等用于构建复杂解决方案的概念。Ecma-262通过叫做EcmaScript的“伪语言”,为我们描述javascript的多有这些基本概念。
3.1语法
EcmaScript的语法大量借鉴了C语言的语法。因此熟C语言的开发人员在接受ECMAScprit,会有一种轻松的感觉。
3.1.1 区分大小写
要理解的第一个概念就是ECMAScript中的一切(变量,函数名和操作符)都区分大小写。这就意味着test和TEST分别表示两个不同的变量,而函数名称不能使用typeof,因为是一个关键字。
3.1.2标示符
所谓标示符,就是指变量,函数,属性的名字,或者函数的参数,标示符可以按照系列格式规则
☆ 第一个字符必须是一个字母,下划线,或者一个美元符号($);
☆ 其他字符可以是字母,下划线,美元或数字。
3.13 注释
EcmaScript使用C风格的注释,包括单行注释和块计注释,单行注释一两个斜杠开头,
//单行注释
块级注释
/*
*这是一个多行注释
*
*
*/
3.14 严格模式
ECMAScript5 引入了严格模式的概念。严格模式是为Javascript定义了一种不同的解析和执行。在严格模式下,ECMAScript3中一种不确定的行为将得到处理,而且对某些不安全的操作也会抛出异常。要在整个脚本中启用严格模式,可以再顶部添加如下代码:
“USE STRICT”;
这行代码看起来像字符串,而且也没有赋值给任何变量,但其实他只是一个编译指示,用于告诉浏览器javascript引擎切换到严格模式。也可以指定在函数在严格模式下执行:
function Dosomthing()
{
"use strict";
//函数体
}
严格模式下,javascript的执行结果会有很大不同,因此我将会随时指出严格严格下的区别。
3.15语句
EcmaScript中的语句是以一个分号结尾;如果省略分号,则有解析器确定语句的结尾,如下列所示,
var a = 1,b=2;
var sum = a + b//即使没有分号也没有推荐有效的语句-不推荐
var diff = a - b;//有效的语句-推荐
这个分号可以避免很多错误,开发人员可以放心的通过删除多余的空格来压缩ECMAscript代码。另外,加上分号也会在某些情况下增加代码的性能。
3.2关键字和保留字
3.3变量
EcmaScript的变量是松散型的,所谓松散型就是用来保存任何类型的数据。换句话说,每个变量仅仅是一个保存值的占位符而已。定义变量时要使用var操作符,后跟变量名称,如下所示:
var message;
这行代码定义了一个Message的变量,该变量可以保存用来使用保存任何值,像上面也支持直接初始化一个变量 var message="123";
3.4
EcmaScript有五中数据类型:undefined,null,boolen,Number和string。还有一种复杂数据类型-object.object本质上就是一组无序的。所有的值都属于上述6种类型数据。
3.4.1
☆ "undefined" 如果这个值未定义
☆ “boolean” 如果这个值布尔值
☆ “string” 如果这个值是字符串
☆ “number” 如果这个值是数值
☆ ”object“ 如果这个值对象或Null.
☆ function 这个值是函数
下面是几个实用typeof 操作符的例子
var message = "some string";
alert(typeof message);
alert(typeof message);
alert(typeof 95);
有时候,typeof操作符的操作符可以是变量,比如说typeof null 会返回“object”,因为特殊值null被认为是一个空的对象。
3.4.2
undefined类型只有一个值,在使用var声明变量但未对其初始化,这个变量就是undefined,例如
var mes;
alert(mes==undefined);
记住 初始化为赋值就是undefiend.对未声明的变量执行typeof操作符同样也会返回undefined。
var msg;
alert(typeof msg);//undefined
alert(typeof message);//undefined
JS的基本概念的更多相关文章
- js引出函数概念的案例
js引出函数概念的案例 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8&q ...
- js的基本概念详解
来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(三) 如果你刚学js,想快速了解到js的基本概念,以下将会是一篇不错的引导文章: 语法 ...
- JavaScript--我发现,原来你是这样的JS(基础概念--躯壳,不妨从中文角度看js)
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的, ...
- JavaScript--我发现,原来你是这样的JS(基础概念--灵魂篇,一起来学js吧)
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂 ...
- 转:WebGL、Asm.js和WebAssembly概念简介
WebGL.Asm.js和WebAssembly概念简介 转:http://www.techbrood.com/zh/news/webgl/webgl%E3%80%81asm_js%E5%92%8Cw ...
- js沉思录一:js的核心概念
js的核心概念: 原型.对象(Object).函数(Function); 原型:路由路径上非叶子结点的对象: 对象:无序属性(包括函数)的集合: 函数:函数上下文的集合: 原型: 原型的创建.指定.修 ...
- 浅谈Js对象的概念、创建、调用、删除、修改!
一.我们经常困惑,对象究竟是什么,其实这是一种思维,一种意识上的东西,就像我们都说 世界是有物质组成的道理一样,理解了下面的几句话!对象也不是那么抽象! 1.javascript中的所有事 ...
- js的闭包概念
一.变量的作用域要懂得闭包,起首必须懂得Javascript特别的变量作用域.变量的作用域无非就是两种:全局变量和局部变量.Javascript说话的特别之处,就在于函数内部可以直接读取全局变量. J ...
- js继承的概念
js里常用的如下两种继承方式: 原型链继承(对象间的继承) 类式继承(构造函数间的继承) 由于js不像java那样是真正面向对象的语言,js是基于对象的,它没有类的概念.所以,要想实现继承,可以用js ...
随机推荐
- AngularJS 疑难问题解决汇总
AngularJS 防止页面闪烁的方法 angularjs filter 详解 学习资料1 学习资料2 在 AngularJS 应用中处理单选框和复选框 学习资料3 AngularJS 之 Facto ...
- .net 控件开发第二天 怎么将 第一天写的代码 用到 .net中来
前面第一天 我们看到的全是 js的代码,虽然不管是BS的框架是java 还是 php,复用性 还是特别高的, 但是 写起来比较费劲,怎么办,我们能不能 更 简单点呢? 当然可以,这个时候我们就要用到 ...
- Host和Server的开发
Host和Server的开发 对于开发人员来说,代码就是最好的文档,如上一篇博文所说,下面我们就会基于Kanata项目的一些具体调用代码,来进一步深入理解OWIN的实现和作用. 今天我们先针对Host ...
- UVA - 11986 Save from Radiation
Description J Save from Radiation Most of you are aware of Nuclear Power Plant Explosion at Fukushim ...
- SQL Server 板机
触发器是一种特殊类型的存储过程.们介绍的存储过程. 触发器主要是通过事件进行触发被自己主动调用运行的. 而存储过程能够通过存储过程的名称被调用. Ø 什么是触发器 触发器对表进行插入.更新.删除的时候 ...
- Lua的多任务机制——协程(coroutine)
并发是现实世界的本质特征,而聪明的计算机科学家用来模拟并发的技术手段便是多任务机制.大致上有这么两种多任务技术,一种是抢占式多任务(preemptive multitasking),它让操作系统来决定 ...
- PKU 1276 Cash Machine
<span style="color:#000099;">/* Cash Machine Time Limit: 1000MS Memory Limit: 10000K ...
- 当今最流行的Node.js应用开发框架简介
快速开发而又容易扩展,高性能且鲁棒性强.Node.js的出现让所有网络应用开发者的这些梦想成为现实.但是,有如其他新的开发语言技术一样,从头开始使用Node.js的最基本功能来编写代码构建应用是一个非 ...
- PHP 6:PHP 基本数据类型
原文:PHP 6:PHP 基本数据类型 本章将介绍PHP基本类型.相信我们已经熟悉了C/C++,C#或者Java里的任意一种语言.本章会以C#为比较语言.OK,如果你想学PHP,你最先考虑的是什么呢? ...
- C语言身份证信息查询系统(修改版)
很久以前写了一个<C语言身份证信息查询系统>,如果你点击链接进去看了. 估计也会被我那磅礴大气的代码震惊到的,最近复习/学习文件操作,把代码改了改,算是对以前还不会文件操作的时候的愿望,哈 ...