zoukankan      html  css  js  c++  java
  • JavaScript重点知识

    1.JavaScript由三部分组成:

    • ECMAScript:提供核心语言功能
    • 文本对象模型(DOM):提供访问和操作网页内容的方法和接口
    • 浏览器对象模型(BOM):提供与浏览器交互的方法和接口

    2.自定义构造函数创建对象

    //自定义构造函数创建对象
    //函数与构造函数的区别在于名字(首字母)是不是大写
    function Person(name, age) {
      this.name = name;
      this.age = age;
      this.sayHi = function () {
        console.log("我叫" + this.name + ",年龄是:" + this.age);
      }
    }
    var obj1 = new Person("小明", 10);
    console.log(obj1.name);
    console.log(obj1.age);
    obj1.sayHi();
    
    var obj2 = new Person("小芳", 18);
    console.log(obj2.name);
    console.log(obj2.age);
    obj2.sayHi();
    
    console.log(obj1 instanceof Person); //true
    console.log(obj2 instanceof Person); //true
    
    //自定义狗的构造函数
    function Dog(name, age, sex) {
      this.name = name;
      this.age = age;
      this.sex = sex;
    }
    var dog = new Dog("小黑", 10, "男");
    console.log(dog instanceof Person) //false
    console.log(dog instanceof Dog) //true

     3.json对象以及json对象的遍历(for-in循环)

    //遍历对象,是不能通过for循环遍历,无序
    var json = {
      "name": "Lee",
      "age": "25",
      "sex": "female"
    };
    var key = "height";
    console.log(json[key]); //undefined
    
    //只要用.(点)了之后,score属性就被创建了,只不过没有赋值
    console.log(json.score) //undefined
    
    //可以通过for-in循环
    for (var key in json) {
      //这里不能用.来拿值,用点会创建新的名为key的属性
      // console.log(key+"---"+json.key);//这是不对的
      console.log(key + "---" + json[key]);
      /* 输出结果:
        name---Lee
        age---25
        sex---female
      */
    }

     4.简单类型和引用类型

    • 原始数据类型:number, string, boolean, undefined, null, object
    • 基本类型(简单类型),值类型:number, string, boolean
    • 复杂类型(引用类型):object
    • 空类型:null, undefined

    值类型的值在哪一块空间存储?  栈中存储

    引用类型的值在哪一块空间存储?  对象在堆上存储,地址在栈上存储。

     注意这里的地址位实际有16位,我在这里只是简写,说明一下原理。

  • 相关阅读:
    C#利用HttpWebRequest进行post请求的示例(HTTPS)
    以文件流的方式读取本地文件
    C#读取xml文件指定节点下的值
    C# get post 的方法
    SQL2008安装后激活方式以及提示评估期已过解决方法(转)
    python 左移右移 2个数交换
    python 循环内部添加多个条件判断会出现越界
    python __new__ __init__ __del__
    python 模块中__all__作用
    Python urllib的urlretrieve()函数解析 (显示下载进度)
  • 原文地址:https://www.cnblogs.com/muzidaitou/p/11280606.html
Copyright © 2011-2022 走看看