JavaScript学习|青训营笔记

58 阅读2分钟

这是我参加第四届青训营笔记创作活动的第二天

## 一.JavaScript 对象
 对象也是变量。但是对象包含很多值。


这段代码把多个值(porsche, 911, white)赋给名为 car 的变量:

var car = {type:"porsche", model:"911", color:"white"};

对象属性

(JavaScript 对象中的)名称:值对被称为属性

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

对象方法

对象也可以有方法

方法是在对象上执行的动作

方法以函数定义被存储在属性中。

例:

    var person = {
  firstName: "Bill",
  lastName : "Gates",
  id       : 678,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  }
};

this 关键词

在函数定义中,this 引用该函数的“拥有者”。

在上面的例子中,this 指的是“拥有” fullName 函数的 person 对象

换言之,this.firstName 的意思是 this 对象的 firstName 属性。

二.JavaScript 事件

## HTML 事件

HTML 事件可以是浏览器或用户做的某些事情。

下面是 HTML 事件的一些例子:

  • HTML 网页完成加载
  • HTML 输入字段被修改
  • HTML 按钮被点击

通常,当事件发生时,用户会希望做某件事。

JavaScript 允许您在事件被侦测到时执行代码。

通过 JavaScript 代码,HTML 允许您向 HTML 元素添加事件处理程序。

<button onclick='document.getElementById("demo").innerHTML=Date()'>现在的时间是?</button>
事件描述
onchangeHTML 元素已被改变
onclick用户点击了 HTML 元素
onmouseover用户把鼠标移动到 HTML 元素上
onmouseout用户把鼠标移开 HTML 元素
onkeydown用户按下键盘按键
onload浏览器已经完成页面加载

三.JavaScript字符串

var x = "Bill";             
var y = new String("Bill");

// (x == y) 为 true,因为 x 和 y 的值相等

当使用 === 运算符时,相等字符串是不相等的,因为 === 运算符需要类型和值同时相等。

实例

var x = "Bill";             
var y = new String("Bill");

// (x === y) 为 false,因为 x 和 y 的类型不同(字符串与对象)
var x = new String("Bill");             
var y = new String("Bill");

// (x == y) 为 false,因为 x 和 y 是不同的对象
var x = new String("Bill");             
var y = new String("Bill");

// (x === y) 为 false,因为 x 和 y 是不同的对象
    

请注意 (x==y) 与 (x===y) 的区别。

JavaScript 对象无法进行对比,比较两个 JavaScript 将始终返回 false

参考:

  • 青训营跟着月影学JavScript ppt
  •     W3School JavaScript