- JavaScript加法运算符
- 如果运算字是对象,先自动转成原始类型的值(即先执行改对象的valueOf方法,如果结果不是原始类型的值,
再执行tostring方法;如果对象是Date实例,则先执行tostring) - 两个运算子都是原始类型的值之后,只要有一个运算子是字符串,则两个运算子都转为字符串,执行字符串连
接运算。 - 否则,两个运算子都转为数值,执行加法运算。
- 如果运算字是对象,先自动转成原始类型的值(即先执行改对象的valueOf方法,如果结果不是原始类型的值,
- btoa():将字符串或者二进制转为Base64编码
- atob():Base64编码转为原来的编码
var string = 'hello world'; btoa(string);//SGVsbG8gV29ybGqh atob('SGVsbG8gV29ybGqh');//hello world 但是,这两个方法不适合非ASCII编码的字符,会报错 例如:btoa('你好')//Uncaught DOMException: The string to be encoded contains characters outside of the Latin1 range. 要将非ASCII码字符转为Base64编码,必须中间插入一个转码环节,再使用这两个方法 优化方法: function b64Encode(str){ return btoa(encodeURIComponent(str));//编码 } function b64Decode(str){ return decodeURIComponents(atob(str));//解码 }
- btoa():将字符串或者二进制转为Base64编码
- 字符串对象的方法中与正则相关
match():返回一个数组,成员是所以匹配的子字符串。 search():按照给定的正则表达式进行搜索,返回一个整数,表示匹配开始的位置 replace():按照给定的正则表达式进行替换,返回替换后的字符串 split():按照给定的规则进行字符串分给,返回一个数组,包含分割后的各个成员。
- Object对象与继承
1.Object.getOwnPropertyNames():返回一个数组,成员是对象本身的所有属性的键名,包含继承的属性键名 2.Object.keys(obj):返回对象的所有可以枚举的属性 3.Object.prototype.hasOwnProperty():返回一个布尔值,用于判断某个属性定义在对象自身,还是定义在原型链上 4.in运算符与for..in循环 in运算符返回一个布尔值,表示一个对象是否具有某个属性,它不区分该属性是对象本身的属性还是继承的属性; for..in循环返回可枚举的属性数组
- this关键字
1. call 指定该函数内部this的指向即函数执行是所在的作用域,然后在所指定的作用域中,调用该函数 格式:func.call(obj,arg1,arg2,...)//obj 为this指定的对象 2. apply与call类型,区别是调用方法的参数不同 格式:func.apply(obj,[arg1,arg2])//obj为this指定的对象 3. bind用于将函数体内的this绑定到某个对象,然后返回一个新函数
- 浏览器渲染引擎
FireFox:Gecko引擎 Safari:Webkit引擎 Chrome:Blink引擎 IE:Trident引擎 Edge:EdgeHTML引擎
- XMLHttpRequest实例
- readyState,表示当前XMLHttpRequest请求所处的状态
0:对应常量UNSENT,表示实例已经生成,但是Open方法还没有被调用 1:对应常量OPENED,表示send方法还没有被调用,任然可以使用setRequestHEader()设定HTTP请求的头信息 2:对应常量HEADERS_RECEIVED,表示send方法已经执行,并且头信息和状态码已经收到 3:对应常量LOADING,表示正在接收服务器传来的body部分的数据,如果responseType属性是text或者空字符串,responseText就会包含已经收到的部分信息 4:对应常量DONE,表示服务器数据已经完全接收,或者本次接收已经失败了
- status,表示背刺请求所得到的HTTP状态码
200:OK,访问正常 301:Moved Permanently,永久移动 302:Moved temporarily,暂时移动 304:Not Modified,未修改 307:Temporary Redirect,暂时重定向 401:Unauthorized,未授权 403:Forbidden,禁止访问 404:Not Found,未发现指定网址 500:Internal Server Error,服务器发生错误