JavaScript 变量能够保存多种数据类型:数值、字符串值、数组、对象等等:
var length = 7; // 数字
var lastName = "7"; // 字符串
var cars = ["1", "2", "3"]; // 数组
var x = {firstName:"1", lastName:"2"}; // 对象
复杂数据 typeof 运算符可返回以下两种类型之一:
function object
typeof {name:'1', age:2} // 返回 "object"
typeof [1,2,3,4] // 返回 "object"
typeof null // 返回 "object"
typeof function myFunc(){} // 返回 "function"
原始数据
typeof 运算符可返回以下原始类型之一:
string number boolean undefined
Undefined 与 Null 的区别
Undefined 与 null 的值相等,但类型不相等
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true
实例
var person = null; // 值是 null,但是类型仍然是对象
undefined 清空对象:
实例
var person = undefined; // 值是 undefined,类型是 undefined
空值
空值与 undefined
var car = ""; // 值是 "",类型是 "string"
Undefined 在 JavaScript 中,没有值的变量,其值是 undefined。typeof 也返回 undefined。
任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined。
typeof 运算符对数组返回 "object",因为在 JavaScript 中数组属于对象。
JavaScript 布尔值 布尔值只有两个值:true 或 false。
JavaScript 数组 JavaScript 数组用方括号书写。
数组的项目由逗号分隔。
JavaScript 数值 JavaScript 只有一种数值类型。
JavaScript 字符串值 字符串(或文本字符串)是一串字符
JavaScript 基本数据类型
基本数据类型有五种:字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)。
复合数据类型
对象(Object)、数组(Array)、函数(function)。
JavaScript基本数据类型
(1)数值类型
(2)布尔类型
(3)字符串类型
(4)Undefined类型
(5)Null类型
JavaScript 保留关键字 Javascript 的保留关键字不可以用作变量、标签或者函数名。
abstract arguments boolean break byte case catch char class* const continue debugger default delete do double else enum* eval export* extends* false final finally float for function goto if implements import* in instanceof int interface let long native new null package private protected public return short static super* switch synchronized this throw throws transient true try typeof var void volatile while with yield
image.png
JavaScript 对象、属性和方法
Array Date eval function hasOwnProperty Infinity isFinite isNaN isPrototypeOf length Math NaN name Number Object prototype String toString undefined valueOf
image.png
JavaScript 所有关键字:
break case catch continue default delete do else finally for function if in instanceof new return switch this throw try typeof var void while with
throw 与 try...catch...finally:操作异常 in:与for 一起使用用于遍历对象的属性名 instanceof :返回的是布尔值,而typeof 返回的是几种数据类型的字符串值。
JavaScript 关键字
JavaScript 关键字必须以字母、下划线(_)或美元符($)开始。
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
back()方法,加载 history 列表中的前一个 URL。
语法:
window.history.back();
比如,返回前一个浏览的页面,代码如下:
window.history.back();
back()相当于go(-1),代码如下:
window.history.go(-1);
在HTML文档对象模型中,history对象的()用于加载历史列表中的下一个URL页面。
forward()
image.png
Math.floor document.write(Math.floor(0.6) =0 document.write(Math.floor(1.40) =1
求一个最接近它的整数,它的值小于或等于这个浮点数
常见状态吗:400(请求无效),401(需要权限),500(服务器错误)
onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。 readyState 存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
readyState
XMLHttpRequest对象的status属性状态吗
200 服务器正常处理了请求并响应 404 请求的页面(资源)没有找到 403 没有权限访问请求的页面(资源) 405 页面(资源)不接收该请求方式 408 请求超时 500 服务器处理请求时遇到错误(可能因为应用程序抛出异常导致) 502 上游服务器和网关/代理不同意的协议交换数据 503 服务器暂时不可用
XMLHttpRequest的属性与状态码
XMLHttpRequest对象有一个属性可以获得服务器传回的HTTP状态码
onreadystatechange: 每次状态改变所触发事件的事件处理程序
readyState:对象状态值
responseText:从服务器进程返回的数据的字符串形式
status:从服务器返回的数字代码
responseXML:从服务器进程返回的数据的字符串形式
cookie对象的Expires属性用来设置当前cookie的存活时间。
在默认情况下,cookie是临时存在的。在一个浏览器窗口打开时,可以设置cookie,只要该浏览器窗口没有关闭,cookie就一直有效,而一旦浏览器窗口关闭后,cookie也就随之消失。
为cookie设置一个生存期
所谓生存期也就是cookie的终止日期,在这个终止日期到达之前,浏览器随时都可以读取该cookie。一旦终止日期到达之后,该cookie将会从cookie文件中删除。
join() 方法用于把数组中的所有元素放入一个字符串
image.png
image.png
都为undefined
image.png
image.png
Array.prototype.method1 = function() {
var arr=[];
for(var i = 0; i<this.length; i++) {
if(arr.indexOf(this[i] == -1) {
arr.push(this[i]);
}
}
}
image.png
image.png
javaScript实现去除数组中重复的元素
1.先排序 2.遍历数组每个元素 3.让前一个元素与后一个元素相比较,若相等,删除前一个 4.每次删除元素会使数组长度减一,再次循环时会少对比一个 ,所以删除后i--
var arr=[11,32,3,4,2,32,4,12,3,11,23];
arr.sort(function(x,y){
return x-y;
});
image.png
for(var i=0; i<arr.length; i++){
if(arr[i] == arr[i+1]){
arr.splice(i,1);
i--;
}
}
console.log(arr);
image.png