01_JavaScript介绍、变量、运算符

JavaScript历史

  • 1995.2月 Netscape公司发布LiveScript,后临时改为JavaScript,为了赶上Java的热浪。
    欧洲计算机制造商协会(ECMA)英文名称是European Computer Manufacturers Association
  • 1997 年,以JavaScript 1.1 为基础。由来自 Netscape、Sun、微软、Borland 和其他一些对脚本编程感兴趣的公司的程序员组成的 TC39(ECMA的小组) 锤炼出了 ECMA-262,也就是ECMAScript1.0。
  • 1998年6月,ECMAScript 2.0版发布。
  • 1999年12月,ECMAScript 3.0版发布,成为JavaScript的通行标准,得到了广泛支持。
  • 2007年10月,ECMAScript 4.0版草案发布:分歧太大,失败告终。
  • 2009年12月,ECMAScript 5.0版正式发布
  • 2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015。

JavaScript和ECMAScript的关系

ECMAScript是一种由Ecma国际前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association,制定的标准。
  JavaScript是由公司开发而成的,公司开发而成的一定是有一些问题,不便于其他的公司拓展和使用。所以欧洲的这个ECMA的组织,牵头制定JavaScript的标准,取名为ECMAScript。
  简单来说ECMAScript不是一门语言,而是一个标准。符合这个标准的比较常见的有:JavaScript、Action Script(Flash中用的语言)。就是说,你JavaScript学完了,Flash中的程序也会写了。
  ECMAScript在2015年6月,发布了ECMAScript 6版本,语言的能力更强。但是,浏览器的厂商不能那么快的去追上这个标准。这些新的特性,我们就业班的深入,也会给大家介绍。

JS介绍

js是一款运行在客户端的网页编程语言。

  • 组成部分

  • ECMAScript:JavaScript的语法标准。

  • DOM:JavaScript操作网页上的元素的API

  • BOM:JavaScript操作浏览器的部分功能的API

  • 特点

  • 简单易用
    可以使用任何文本编辑工具编写
    只需要浏览器就可以执行程序

  • 解释执行
    解释执行:事先不编译、逐行执行、无需进行严格的变量声明
    编译执行:java c# 转化为.dll可执行文件==>电脑读取.dll可执行文件

  • 基于对象
    内置大量现成对象,编写少量程序可以完成目标

  • 面向过程

  • 作用

  • 表单验证

  • 轮播特效

  • 开发游戏

JS书写位置

Javascript 书写位置
(1)与css类似,直接嵌入到html页面中
(2)文件调用:JavaScript代码写到另一个文件当中(其后缀通常为“.js”),然后用格式为<script src="javascript.js"></script>的标记把它嵌入到文档中

  • 写js代码的时候,分号不能省略。
  • 推荐将JS代码写在html结束标签后边、将多个JS文件合成为一个JS文件
Javascript执行过程中的小原理
  • html页面中出现<script>标签后,就会让页面暂停等待脚本的解析和执行。无论当前脚本是内嵌式还是外链式,页面的下载和渲染都必须停下来等待脚本的执行完成才能继续,这在页面的生命周期中是必须的。
    例如:通过外链式js文件查看加载速度。

输出消息的几种方式

  • alert() 在页面弹出一个对话框,早期JS调试使用。
  • Confirm() 在页面弹出一个对话框, 常配合if判断使用。
  • console.log() 将信息输入到控制台,用于js调试
  • prompt() 弹出对话框,用于接收用户输入的信息。
    返回用户输入的信息
  • document.write()在页面输出消息
    document.write("<p><a href='#'>你好</a></p>");
    document.write不仅能输出信息,还能输出标签。

转义字符

\" 转双引
\'转单引
\n转换行
\r转回车

Js注释

单行注释 //
多行注释 /* */
快捷键 ctrl+/

变量

会变化的量。
变量是用来存储数据的容器。

  • 变量定义

变量定义: var 自定义名称;

var关键字定义变量

  • 给变量赋值

变量名=值;

var wukong = 123;//wukong是变量名,123是变量
  • 命名规范
  • 变量名必须以字符或下划线“_”开头
  • 变量可以包含数字、从A至Z的大小字母
  • 不能以数字或者纯数字开头来定义变量名。
  • 不推荐使用中文来定义变量名。
  • 不能使用特殊符号或者特殊符号开头(-除外);
  • JavaScript严格区分大小写,computer和Computer是两个完全不同的变量
  • 禁止使用javascript的保留关键字作为变量名(见下面的保留关键字图)



    用于程序控制或者执行特定操作的关键字

    保留关键字

JavaScript数据类型

  • 简单数据类型:
  • Number:数字类型
  • String:字符串类型
  • Boolean:布尔类型
  • undefined:变量未初始化
  • null:空类型
typeof undefined;//"undefined"
null === undefined;//false
null == undefined;//true
typeof null;//"object"
  • 复杂数据类型:

  • Object:对象(引用)

  • Array:数组

  • 判断数据类

typeof 变量名;

  • Number数据类型
  1. 最基本的数据类型
  2. 不区分整型数值和浮点型数值
  3. 能表示的最大值是±1.7976931348623157乘以10的308次方
    能表示的最小值是±5 乘以10的-324次方
  4. 包含十六进制数据,以 0x开头 0到9之间的数字,a(A)-f(F)之间字母构成。 a-f对应的数字是10-15
  5. 八进制直接以数字0开始,有0-7之间的数字组成。
        var num = 0x3f;//十六进制
        var num1 = 045;//8进制
        alert(num);//63
        alert(num1);//37
  • 字符串
    字符串由单引号或双引号括起
    例如单独一个字母也被称为字符串(例如:‘a’)
    转义字符 \" \'
var str = "你好";
var str1 = '你好啊';
  • 比较运算符:> , < , >= , <= , == , !=
var    a=1;      
var   b=2;            
alert(a>b);       
  • 布尔数据类型 Boolean
    只有2个值一个是true, 一个是false. 实际运算中true=1,false=0
  • JavaScript 特殊类型
    取值null 含义:变量未引用,值为空(主动),在内存中找不到这个变量
    取值undefined 含义:变量未初始化,变量在内存中是存在的
  • Null: Javascript中的关键字,它表示一个特殊值。通常用来描述“空值”。
  • undefined: 表示值得空缺。它是变量的一种取值,表示变量未进行初始化(变量没有赋值),在EcmaScript3中,undefined是可读写的变量,可以给它赋任何值。在EcmaScript5中将这个错误进行了修改。只有undefined这一个值。

算术运算符

算数运算符
  • + 加号
  • 两个数字类型的变量相加,得到的是一个数字类型。
  • 一个数字类型和一个字符串相加,得到的是一个字符串。
  • - 减号
  • 两个数字类型的变量相减,得到的是一个数字类型。
  • 一个数字类型和一个数字字符串相减,得到的是一个数字类型。
  • 一个数字类型和一个非数字字符串相减,得到的是NaN,是一个数字类型。
        var num1 = 22;
        var num2 = 23;
        var str1 = "12";
        var str2 = "nihao";
        var str3 = "8";
        alert(typeof (num1-str1));//number
        alert(num1-str2);//NaN
        alert(str1-num1);//-10
        alert(str1-str2);//NaN
        alert(str1-str3);//4
  • NaN, not a number,表示不是一个数字
      判断是不是一个数字使用: isNaN(x)
      (typeof NaN)是number

  • / 除号

  • 两个数字类型的变量相除,得到的是一个数字类型。

  • 一个数字类型和一个数字字符串相除,得到的是一个数字类型。

  • 一个数字类型和一个非数字字符串相除,得到的是NaN,是一个数字类型。

  • 0做为除数的时候,得到结果 Infinity (无限大),是一个数字类型。

        var num1 = 24;
        var num2 = 23;
        var str1 = "12";
        var str2 = "nihao";
        var str3 = "8";
        alert(num1/0);//Infinity
        alert(num1/str1);//2
        alert(num1/str2);//NaN
        alert(typeof (num1/str2));//number
  • Infinity: 无穷大 例如: var number=7/0
  • % 取余数
  • 优先级:有()先计算()里边的

带操作的赋值运算

在javascript中,程序执行的过程是从上而下的顺序执行。遇到错误,不会再往下执行。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,445评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,889评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,047评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,760评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,745评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,638评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,011评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,669评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,923评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,655评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,740评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,406评论 4 320
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,995评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,961评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,023评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,483评论 2 342

推荐阅读更多精彩内容