[19/05/25-星期六] JavaScript_ 基础知识和基本语法_数据类型

一、概念

  诞生于1995年,刚开始主要用于处理网页中的前端验证(指的是检查用户输入的内容是否符合一定的规则,比如用户名的长度、密码的长度、邮箱格式等)。

  前身是网景公司的LiveScript语言,傍的sun公司的Java语言的便利,它们之间没有什么关系,只是叫JavaScript

  JScript是微软公司1996年在其IE3.0浏览器中引入的,自己对JavaScript的实现,另立炉灶。

  为了确保不同浏览器的兼容性,所以两个公司共同制定了js的标准ECMAScript,这个标准就是一个文档,需要各大浏览器厂商去实现,即引擎。

  如:Firefox的spiderMonkey 引擎及 谷歌Chrome的v8引擎,不同浏览器有不同的引擎。

  一个完整的JavaScript有三个部分组成:ECMAscript(标准)+DOM(文档对象模型,操作网页)+BOM(浏览器对象模型,操作浏览器)

特点:

  解释性语言(不用去编译);类似于C和Java的语法结构;动态语言;基于原型的面向对象

二、js的编写位置

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>js的学习</title>
        <!--引入js的标签-->
        <script type="text/javascript">
            
        /*1、控制浏览器弹出一个警告框 alert:警告
         alert("这是我的第一行js代码");
         * */
         
        /*2、让计算机在页面中输出一个内容 ,就是往body中写入一个内容。document:文档
          document.write("你是个好人!");
         * */
        
        /*3、向控制台输出一个内容 审查元素-console 调试代码 一般用户是看不到的
         * console.log("你猜猜?");
         */                
       </script>
       <!--可以引入外部的js 标签也是script,不是link 在src中写入路径
           这样可以使不同页面中同时调用,可以利用浏览器的缓存机制 推荐使用
           
       -->
       <script type="text/javascript" src="../js/js01.js">
       /*一旦引入外部js文件,那么里面的就不会执行,即使编写的有代码,如下边这句就不会显示
         如果需要写,需要在创建一个script标签
        */
           alert("我是内部js标签");
       </script>
       <script type="text/javascript">
           alert("我是内部js");
       </script>
       
    </head>
    
    <body>
        <!--可以将js代码写到标签的onclick属性中
            点击按钮时才会执行 注意里边写到是单引号
            虽然可以写在标签中,但是会属于结构和行为的耦合,不推荐。可以写在script标签中或外部js文件中
        -->
        <button onclick="alert('你点你妈呢')"> 点我一下</button>
        
        <!--可以将js代码写到超链接的href属性中 这样点击超链接时 ,会执行js代码
            注意书写格式 第2个超链接实现: 点了之后,没反应
        -->
        <a href="JavaScript:alert('滚一边去');"> 你也点我一下 </a> <br />
        <a href="JavaScript:;"> 你也点我一下 </a>
    </body>
</html>

 三、基本语法(1)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>js的基本语法</title>
        <script type="text/javascript">
            /* 1、js的注释: 多行注释,反斜杠加* ;  单行注释 “//”
             * 2、严格区分大小写  HTML中不区分大小写
             * 3、每条语句以“;”结尾。不写“;”也行,浏览器会自动添加,但可能出错。
             * 4、js中忽略多个空格和换行,可对代码进行格式化,美观
               5、字面量:就是常量,一些不可变的量 都是可以直接使用的,但不会直接使用。
                           变量:可以用来保存字面量变量,更加方便使用。需要先用var(variable :变量)声明
             * 6、标识符:在js中可以有我们自主命名的都称之为标识符 例如:变量名、函数名、属性名
             *     遵守规则:可以含有字母、数字、下划线、$ ;不能以数字开头;不能是js中的关键字和保留字
             *     命名规范:驼峰规则 首字母小写,每个单词开头字母大写
             * 7、js保存标识符采用的是utf-8来保存的,理论上字符都能用(包括中文)
             * 8、6种数据类型:
             *    String(字符串)、 Number(数字)、Boolean(布尔值)、Null(空值)、Undefined(未定义) 基本数据类型
             *    Object(对象) 引用数据类型
             * (1) String:引号不能混着用,同一类引号不能嵌套(即双引号里边不能用双引号,单不能用单),非要用需要转义字符\
             * \"...\" 表示"..."  \'...'\表示'...'  \n表示换行  \t表示制表符  打印\用\\ 打印\\ 用\\\\ 
             * (2) Number:在js中所有数值都是Number类型(包括整数和浮点数)
             * 如果使用js计算浮点数,可能得到一个不精确的数 (尤其涉及到金融方面)
             * (3)Boolean: true 还是 false 
             * (4)Null :只有一个值就是null 表示一个为空的对象 使用typeof会返回Object
             * (5)Undefined:一个值undefined 声明一个变量但是没有赋值就是Undefined类  如 var b;
             * 9、强制类型转换 转成String Number Boolean
             * 转成String类
             * 方式1: 调用被转换类型的toString方法 该方法不会影响原来变量,可以赋值给另一个变量查看
             *          如:var a=30; var b=a.toString(); NULL和Undefined没有toString方法
             * 方式2: 调用String函数,并被转换数据作为参数传给String函数 如String(a); 任何数据类型都能用
             * 转Number类:
             * 方式1:若是字符串,使用Number函数 直接传参数 如果是var a="abc"非数字  number(a); 会输出NaN,                  
             *        如果字符串中是空串或者空格,会转成数字0;
             *        如果是布尔值,则true转成1 false转成0; 如果是null,则转成0
             * 方式2:专门用来对付字符串,对非String(如Boolean类)使用会将其先它转成String,再去转换
             *        parseInt() 把一个字符串转整数.将字符串中有效的整数取出转成Int 如a="120px" 把120转成整数类型
             *                   a="120px78"只能把120取出来 a="120.90" 只能取出120 ;a="a123" 他取不出来
             *                   可以利用它取整
             *        parseFloat 把一个字符串转成浮点数,跟上边类似 可以取出有效的小数
             *                   a="123.35.67px" 只能取出123.35 意思是小数点取一次
             * 
             * */
            var a=1314;
            var age=20;
            //alert(a);
            var str="你好呀";//单引号 和 双引号都可以 
            var str2="我说: \"今天天气真好!\" ";
            var bol=true;
            var n1=null;
            console.log(str2);    //输出变量str2
            console.log(typeof a);//typeof 检查变量类型 输出Number Number.MAX_VALUE 输出js的数字的最大值 
                                 //超出最大值输出Infinity 无穷 -Infinity 负无穷
            console.log(typeof str);//NaN:不是一个数字 not a number.是个Number类型的  "a"*"b"就会返回这个
            console.log(typeof bol);
            
            
        </script>
    </head>
    <body>
        
    </body>
</html>

 

 

  

  

  

  

  

posted @ 2019-05-21 22:08  ID长安忆  阅读(245)  评论(0)    收藏  举报