Javascript复习笔记

delims 于 2020-05-05 发布

注意点

  1. switch语句使用恒等运算符 === 进行比较
  2. 10 == “10” 返回 true,值相等但是类型不相等。
  3. 在对象方法中, this 指向调用它所在方法的对象。
  4. 单独使用 this,则它指向全局(Global)对象。在浏览器中,window 就是该全局对象为 [object Window]:
  5. 在函数中,函数的所属者默认绑定到 this 上。在浏览器中,window 就是该全局对象为 [object Window]:
  6. 在 HTML 事件句柄中,this 指向了接收事件的 HTML 元素:
<button onclick="this.style.display='none'">
点我后我就消失了
</button>
<p>点击以下链接查看结果:</p>
<a href="javascript:void(alert('Warning!!!'))">点我!</a>
var xhr = new XMLHttpRequest();
 
xhr.onload = function () {
    // 输出接收到的文字数据
    document.getElementById("demo").innerHTML=xhr.responseText;
}
 
xhr.onerror = function () {
    document.getElementById("demo").innerHTML="请求出错";
}
 
// 发送异步 GET 请求
xhr.open("GET", "https://www.runoob.com/try/ajax/ajax_info.txt", true);
xhr.send();

如果你使用完整的 jQuery 库,也可以更加优雅的使用异步 AJAX:

$.get("https://www.runoob.com/try/ajax/demo_test.php",function(data,status){
    alert("数据: " + data + "\n状态: " + status);
});

ES6 新增了箭头函数。 当只有一个参数时,圆括号是可选的:

(单一参数) => {函数声明}
单一参数 => {函数声明}

没有参数的函数应该写成一对圆括号:

() => {函数声明}

// ES5
var x = function(x, y) {
     return x * y;
}
 
// ES6
const x = (x, y) => x * y;

如果函数部分只是一个语句,则可以省略 return 关键字和大括号 {},这样做是一个比较好的习惯:

const x = (x, y) => x * y ;

JavaScript 函数有个内置的对象 arguments 对象。 argument 对象包含了函数调用的参数数组。

document.getElementById(“intro”); 通过ID查找html元素 var y=x.getElementsByTagName(“p”); 通过标签查找html元素 var x=document.getElementsByClassName(“intro”); 通过类名查找

所有的 JavaScript 对象都会从一个 prototype(原型对象)中继承属性和方法:

Date 对象从 Date.prototype 继承。 Array 对象从 Array.prototype 继承。 Person 对象从 Person.prototype 继承。 所有 JavaScript 中的对象都是位于原型链顶端的 Object 的实例。 使用 prototype 属性就可以给对象的构造函数添加新的属性和方法:

Person.prototype.nationality = "English";
Person.prototype.name = function() {
  return this.firstName + " " + this.lastName;
};

JavaScript 数字均为 64 位的浮点型。52位有效位,11位指数,1位符号

setInterval() - 间隔指定的毫秒数不停地执行指定的代码。 setTimeout() - 在指定的毫秒数后执行指定代码。

window.clearInterval(intervalVariable) 停止 setInterval() 方法执行的函数代码。参数是上个函数返回值

HTML 标签学习

这段文本包含 上标

some text.some other text.