美文网首页
01_JavaScript介绍、变量、运算符

01_JavaScript介绍、变量、运算符

作者: 对方不想理你并向你抛出一个异常 | 来源:发表于2017-09-10 10:42 被阅读0次

    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中,程序执行的过程是从上而下的顺序执行。遇到错误,不会再往下执行。

    相关文章

      网友评论

          本文标题:01_JavaScript介绍、变量、运算符

          本文链接:https://www.haomeiwen.com/subject/fckrfxtx.html