添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
  • ECMAScript 是 ECMA 制定的 262 标准,JavaScript 和 JScript 都遵守这个标准,ECMAScript 是 JavaScript 核心语法
  • DOM 编程是通过 JavaScript 对 HTML 中的 dom 节点进行操作,DOM 是有规范的,DOM 规范是 W3C 制定的。(Document Object Model:文档对象模型)
  • BOM 编程是对浏览器本身操作,例如:前进、后退、地址栏、关闭窗口、弹窗等。由于浏览器有不同的厂家制造,所以 BOM 缺少规范,一般只是有一个默认的行业规范。(Browser Object Model:浏览器对象模型)
  • ————————————————————

    一、嵌入JS的三种方式

    <input type="button" value="hello" onclick="alert('hello js')" />
  • JS 中的任何一个事件都对应一个 事件句柄 ,例如鼠标单击事件 click,对应的事件句柄就是 onclick,事件句柄都是以标签的属性方式存在
  • JS 中的字符串 可以 使用 单引号 括起来,也可以使用 双引号 括起来
  • JS 中的一条语句结束后可以使用 “;” 结尾,也可以不写
  • 页面 script 标签嵌入

    <script type="text/javascript">JS 代码</script>

  • window.alert()的执行会阻塞当前页面的加载
  • 一个页面中可以写多个脚本块
  • 脚本块的位置没有限制
  • 暴露在脚本块中的 JS 代码在页面打开的时候遵循自上而下的顺序依次逐行执行
  • <script type="text/javascript" src="js 文件路径"></script>
  • 这种写法错误:<script type="text/javascript" src="js 文件路径">这里不能写 JS 代码</script>
  • 这种写法错误:<script type="text/javascript" src="js 文件路径"/>
  • ————————————————————

    二、函数的定义与调用

    第一种:普通函数定义
    function 函数名(形式参数列表) {
    function sum(a, b) {
      return a + b;
    
      注意:a 和 b 是形式参数列表,也是两个局部变量。返回数据使用 return 语句,页可以不返回任何数据。
      JS 中的函数在调用的时候,实参可以随意,例如调用以上的 sum 函数,可以这样调用:
        sum(),没有传任何实参的时候 a 和 b 变量没有赋值,则 a 和 b 都是 undefined。
        sum(10),表示 a 变量赋值 10,b 变量仍然是 undefined。
        sum(1,2),表示 a 是 1,b 是 2。
     第二种:把函数的声明当做类进行定义
    函数名 = function(形式参数列表) {
    sum = function(a, b) {
      return a + b;
    
      1、JS 中的函数定义在脚本块中,页面在打开的时候,函数并不会自动执行,函数是需要手动调用才能执行的。
      2、由于 JS 是一种弱类型编程语言,所以函数不能同名,没有重载机制
      3、这样的代码顺序是可以的,页面打开的时候会先进行所有函数的声明,函数声明优先级较高
    <script type="text/javascript">
      sayHello();
      function sayHello(){
        alert("Hello JS");
    </script>
      4、用户点击按钮,调用函数
    <script type="text/javascript">
      function sayHello(){
        alert("hello js");
    </script>
    <input type="button" value="hello" onclick="sayHello();"/>

    ———————————————————— 

    三、局部变量和全局变量

    局部变量:函数的形参是局部变量,另外使用 var 关键字在函数体中声明的变量是局部变量,函数执行结束之后,局部变量的内存就释放了。
    全局变量:在函数体外声明的变量属于全局变量,另外不使用 var 关键字声明的变量无论位置在哪,它都是全局变量,全局变量在浏览器关闭时销毁。
    <script type="text/javascript">
        var a = 10; // 全局变量(在函数体外声明的变量)
        function test(){
            a = 20;
            var b = 30;    // 局部变量(使用 var 关键字在函数体中声明的变量)
            c = 40;          // 全局变量(不使用 var 关键字声明的变量,必须初始化)
            alert(a+"--->"+b+"---->"+c);    
        test();           // 20--->30---->40
        alert(a);        // 20
        // alert(b);    // 报错,b是局部变量
        alert(c);        // 40
    </script>