<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--
var 关键词告知浏览器创建新的变量
任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined。
person = undefined
可以通过设置值为 null 清空对象:var person = null;
indexOf() 方法返回字符串中指定文本首次出现的索引(位置)
lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引
如果未找到文本, indexOf(str,position往后找) 和 lastIndexOf(str,position往前找) 均返回 -1。
两种方法都接受作为检索起始位置的第二个参数。position不是必填
search() 方法搜索特定值的字符串,并返回匹配的位置
slice() 切片
substring()
substr(起始值,长度值)
toUpperCase() 把字符串转换为大写
toLowerCase() 把字符串转换为小写
concat() 连接两个或多个字符串,可用于代替加运算符。"Hello".concat(" ","World!");
String.trim() 删除字符串两端的空白符
charAt() 方法返回字符串中指定下标(位置)的字符串
charCodeAt() 方法返回字符串中指定索引的字符 unicode 编码
Array.foreach() 方法为每个数组元素调用一次函数(回调函数),总是返回undefined
Array.map() 方法通过对每个数组元素执行函数来创建新数组。可以return 返回值
Array.filter() 方法创建一个包含通过测试的数组元素的新数组 return 返回新数组
Array.reduce(total初始值, value项目值, index, array) 方法在每个数组元素上运行函数,以生成(减少它)单个值,return返回一个数字
var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction, 100初始值);
function myFunction(total, value) {
return total + value;
}
Array.every() 方法检查所有数组值是否通过测试。 return 布尔值false、true
Array.some() 方法检查某些数组值是否通过了测试。return 布尔值false、true
toString() 把数组转换为数组值(逗号分隔)的字符串。
Array.join(",")把数组转换为数组值(逗号分隔)的字符串。
Array.pop() 删除最后一个数组元素并返回该元素
Array.push() 向数组末尾添加一个元素,返回整个数组的长度
Array.shift() 删除数组第一个元素,第二个元素索引变为0,返回删除的元素
Array.unshift() 向数组开头位置插入一个元素,返回数组的长度
splice(添加新元素位置,删除元素个数,[添加新元素]) 返回新的数组
slice(开始切割位置,切割数量) 切割数组 返回新的数组
sort() 方法以字母顺序对数组进行排序
reverse() 方法反转数组中的元素
日期和时间通过大写字母 T 来分隔。UTC 时间通过大写字母 Z 来定义。
UTC(Universal Time Coordinated)等同于 GMT(格林威治时间)。
注释:UTC,协调世界时,又称世界统一时间,世界标准时间,国际协调时间。
在日期-时间字符串中省略 T 或 Z,在不同浏览器中会产生不同结果。
try 语句使您能够测试代码块中的错误。
catch 语句允许您处理错误。
throw 语句允许您创建自定义错误。
finally 使您能够执行代码,在 try 和 catch 之后,无论结果如何。
Hoisting 是 JavaScript 将所有声明提升到当前作用域顶部的默认行为(提升到当前脚本或当前函数的顶部)
用 let 或 const 声明的变量和常量不会被提升!var的声明会被提升
通过在脚本或函数的开头添加 "use strict"; 来声明严格模式。
在脚本开头进行声明,拥有全局作用域(脚本中的所有代码均以严格模式来执行)
call() 和 apply() 方法是预定义的 JavaScript 方法。
它们都可以用于将另一个对象作为参数调用对象方法。
let在块中重新声明变量不会重新声明块外的变量:
var x = 10;
{
let x = 6;
}
通过 const 定义的变量与 let 变量类似,但不能重新赋值,变量必须在声明时赋值
在同一作用域或块中,不允许将已有的 var 或 let 变量重新声明或重新赋值给 const
var x = 2;
const x = 2;
{
let x = 2;
const x = 2;
}
在页面完成加载后,通过代码向页面添加脚本
<script>
window.onload = downScripts;
function downScripts() {
var element = document.createElement("script");
element.src = "myScript.js";
document.body.appendChild(element);
}
</script>
【ES5】
Array.isArray()方法检查对象是否为数组
Array.forEach()方法为每个数组元素调用一次函数
Array.map()方法为每个数组元素调用一次函数,有return
Array.filter()
Array.reduce()
Array.reduceRight()
Array.every() 判断每一个是否都符合
Array.some() 判断是否有些符合
Array.indexOf()检索数组中的某个元素值并返回其位置
Array.lastIndexOf()从数组结尾处开始检索
JSON.parse() 字符串转js对象
JSON.stringify() js对象在转字符串
Date.now()返回自零日期(1970 年 1 月 1 日 00:00:00:00)以来的毫秒数,与在 Date 对象上执行 getTime() 的结果相同
属性 Getter 和 Setter 通过方法获取和设置属性
var person = {
firstName: "Bill",
lastName : "Gates",
language : "NO",
get lang() {
return this.language;
},
set lang(value) {
this.language = value;
}
};
person.lang = "en";
document.getElementById("demo").innerHTML = person.lang;
Object.defineProperty() 是 ES5 中的新对象方法 允许定义对象属性和/或更改属性的值和/或元数据
var person = {
firstName: "Bill",
lastName : "Gates",
language : "NO",
};
Object.defineProperty(person, "language", {
value: "EN",
writable : true,
enumerable : true,
configurable : true
});
var txt = "";
for (var x in person) {
txt += person[x] + "<br>";
}
document.getElementById("demo").innerHTML = txt;
【ES6】
Array.find(myFunction函数名不带括号)方法返回通过测试函数的第一个数组元素的值
var numbers = [4, 9, 16, 25, 29];
function myFunction(value项目值, index项目索引, array数组本身) {
return value > 18; 符合值大于18的第一个元素的值
}
Array.findIndex()方法返回通过测试函数的第一个数组元素的索引
Number.isInteger(10)如果参数是整数,true
Number.isSafeInteger()安全整数是可以精确表示为双精度数的整数
isFinite()如果参数为 Infinity 或 NaN,则全局 isFinite() 方法返回 false
isNaN()如果参数是 NaN,则全局 isNaN() 方法返回 true。否则返回 false
箭头函数允许使用简短的语法来编写函数表达式。
您不需要 function 关键字、return 关键字以及花括号。
var x = function(x, y) {
return x * y;
}
const x = (x, y) => x * y;
document.getElementById("demo").innerHTML = x(5, 5);
---------------------------------------------------------------------
checkValidity() 返回 true,如果 input 元素包含有效数据
setCustomValidity() 设置 input 元素的 validationMessage 属性。
<input id="id1" type="number" min="100" max="300" required>
<button onclick="myFunction()">OK</button>
<p id="demo"></p>
<script>
function myFunction() {
var inpObj = document.getElementById("id1");
if (inpObj.checkValidity() == false) {
document.getElementById("demo").innerHTML = inpObj.validationMessage;
}
}
---------------------------------------------------------------------
</script>
-->
<div id="demo"></div>
</body>
<script>
let a = new Date()
document.getElementById("demo").innerHTML = a.toString()
</script>
</html>