• JavaScript核心基础语法


    1 什么是JavaScript? 

    是一种嵌入在网页中的程序段。
    是一种解释型语言,被浏览器解释执行。
    由Netscape发明,ECMA(欧洲计算机制造商协会)将其标准化。
    JavaScript借用了Java的名字,但它和java没有关系。
    出于安全性考虑,增加了JavaScript的限制
    增强客户端的交互功能。
     
    JavaScript与java的区别:
    JS只在浏览器中执行,java可在各种平台上执行。
    JS也有变量,常量,运算符,关键字,数据类型,语句等。
    JS借用了Java的语法,其运算符和表达式与Java非常相似。
     
    2 JavaScript能做什么?
    可以使用JS添加、删除、修改网页上的所有元素及属性。
    在HTML网页中动态写入文本。
    响应网页中的事件,并做出相应处理。
    可用于较验客户端提交的数据。
    检测浏览器类型及版本。
        (判断浏览器类型:)
    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title>跨浏览器编程</title>
        <script type="text/javascript">
            function browserType(even){
                if(window.event){//判断是不是IE浏览器
                  document.getElementById('p1').innerHTML='IE';
                }
                else if(even){//判断是不是DOM兼容浏览器
                   document.getElementById('p1').innerHTML='DOM' ;
                }
            }
    
    
        </script>
    </head>
    <body>
    <button onclick="browserType(event);"> Hello JavaScript Event Object</button>
    <p id="p1">到底是什么浏览器呢</p>
    </body>
    </html>
    View Code
    处理Cookie.
     
    3 JavaScript的技术体系
    核心语言定义
    原生对象和内置对象
    BOM(浏览器对象模式)
    DOM (文档对象模式)
    事件处理模型
     
    4 将JavaScript添加到XHTML文档中
     使用script元素在XHTML文档中直接嵌入JavaScript语句---方便
     1 <!DOCTYPE html>
     2 <html>
     3 <head lang="en">
     4     <meta charset="UTF-8">
     5     <title></title>
     6 </head>
     7 <body>
     8 <script type="text/javascript">
     9     alert("使用script元素在XHTML文档中直接嵌入JavaScript语句");
    10 </script>
    11 
    12 </body>
    13 </html>
    View Code
     将JavaScript源文件通过<script>元素的src属性链接到XHTML文档---结构、表现、行为分离
    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="../js/two.js"></script>
    </head>
    <body>
    <form action="#" method="get">
        <input type="button" value="点击" onclick="alertTest();">
    </form>
    
    </body>
    </html>
    View Code

     在two.js里包含的脚本

    function alertTest(){
    alert("链接外部脚本");
    }
     脚本包含在XHTML事件处理程序性中,eg:onclick  ondblclick onkeydown ...
    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <!--<script type="text/javascript" src="../js/two.js"></script>-->
    </head>
    <body>
    <form action="#" method="get">
        <input type="button" value="点击" onclick="alert('脚本包含在XHTML中');">
    </form>
    
    </body>
    </html>
    View Code

    5 JavaScript变量

    JS中声明变量都用关键字var,并且JS区分大小写

    弱类型,不一定要初始化

    在声明变量时注意的一些小细节:

    声明变量后 第一次给变量赋什么样类型的值,以后必须使用相同的类型

    当我们没有使用var 定义变量的时候 如果没有给变量赋值 就会报错 如果给它赋值了。 宿主环境 (浏览器)就把 认为一个 全局变量

    var num; 当声明的变量未初始化时,值为undefined。
    6 JavaScript数据类型
    6.1 原始数据类型


    typeof运算符
    typeof运算符有一个参数,即要检查的变量或值;
    在使用typeof运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,他都返回"Object";
    用另一个运算符instanceof来解决这个问题;
    eg
    var s=new String('hello js');
    alert(s instanceof String);// 输出"true"
    这个需要开发者明确的指出对象为某特定的类型

    –Undefined:
    
    
    •当声明的变量未初始化时,值为undefined。
    
    
    •当函数无明确返回值时,其调用结果也是undefined。
     
    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <script>
           function test(){
             alert("1111");
             return 1;
             }
    //         var i = test(); //当函数无明确返回值时,其调用结果也是undefined。
    //           var i = test() ;// 先调用函数test 任何把返回值赋值为i   undefined
            var i = test ; //是把函数test的地址赋值给了i;
             alert(i);
             alert(typeof (i));
        </script>
    </head>
    <body>
    </body>
    </html>
    View Code
    –Null
    
    
    •值为null,null是从Undefined派生来的。因此null==undefined
    
    
    •null表示不存在的对象。
    var i = null;
            alert(i);//null
            alert(typeof (i));//object
    –Boolean
    
    
    •true或false
    
    
    –Number
    
    
    •即可表示32位整数,也可表示64位浮点数。
    
    
    •Number.MAX_VALUE和Number.MIN_VALUE定义了上下限。
    
    
    •Number.POSITIVE_INFINITY和Number.NEGATIVE_INFINITY Infinity表示无穷大。isFinite()较验是否无穷大。无穷大返回false
    
    
    •NaN表示非数字,它与自身不相等。一般发生在类型转换失败时,isNaN()较验是否为数字。
    
    
    –String
    
    
    •可用单引号或双引号声明。

    数据类型转换
    parseInt()
    从左到右依次解析 直到遇见解析的那个字符不是是数字, 则结束
    parseFloat
    从左到右依次解析 直到遇见解析的那个字符不是是数字,则结束, 从有效数字开始,只会出现一个小数点。
    var a = parseInt("1234"); //返回1234
    
    
    var b = parseInt("abc"); //返回NaN
    var b = parseFloat("012.23.45"); //返回12.23
     
    强制类型转换有三种:Boolean(value)  Number(value)   String(value)
    当要转换的值是至少有一个字符的字符串,非0数字或对象时,Boolean()函数返回true,如果该值是空字符串,数字0,undefined或null,将返回false;
    Number 转换的时候 是把 字符串当一个整体来转换;
    String 转换的时候 只需要调用作为参数传递进来的值的toString()方法;


     6.2 引用数据类型
              原生对象
    –由JavaScript提供,独立于浏览器的对象。
    –Object,Array,String,Boolean,Number,Date,RegExp...
              内置对象
    –也是一种原生对象,只是在使用时不需要初始化。
    –Global,Math
             宿主对象
    –与浏览器有关的对象。
    –BOM,DOM
            自定义对象
     
    数组对象:
    Array 对数组的内部支持
    Array.concat( ) 连接数组
    Array.join( ) 将数组元素连接起来以构建一个字符串
    Array.length 数组的大小
    Array.pop( ) 删除并返回数组的最后一个元素
    Array.push( ) 给数组添加元素
    Array.reverse( ) 颠倒数组中元素的顺序
    Array.shift( ) 将元素移出数组
    Array.slice( ) 返回数组的一部分
    Array.sort( ) 对数组元素进行排序
    Array.splice( ) 插入、删除或替换数组的元素
    Array.toLocaleString( ) 把数组转换成局部字符串
    Array.toString( ) 将数组转换成一个字符串
    Array.unshift( ) 在数组头部插入一个元素




















     
     
     
     
     
     
     
     
     
  • 相关阅读:
    深度学习之Python 脚本训练keras mnist 数字识别模型
    Hive udtf 报错 java.lang.String cannot be cast to java.lang.Integer
    vue 中 created 和 mounted 钩子生命周期 问题
    vue和 jsplumb 集成 出现下面的错误
    Cognos 中 javascript jQuery 的使用
    Hadoop 下常用的命令
    剑指offer30:连续子数组的最大和
    剑指offer29:最小的k个数
    剑指offer28:找出数组中超过一半的数字。
    剑指offer27:按字典序打印出该字符串中字符的所有排列
  • 原文地址:https://www.cnblogs.com/hellokitty1/p/4779574.html
Copyright © 2020-2023  润新知