[TOC]
# 1.跨域
![](https://box.kancloud.cn/425196de01f6ced463709db5be09193e_721x220.png)
当协议,子域名,主域名,端口号,任意一个不同时,就算作不同的域。
* 不同域之间请求资源就算做跨域。
* Javascript出于安全性的考虑,不允许跨域调用其他页面的对象。简单理解就是因为Javascript同源策略的限制,a.com域名下的js无法操作b.com域名下的对象。
![](https://box.kancloud.cn/a0b601fae1ed7f6146de531fab608d34_688x236.png)
# 2.如何解决跨域
## 2.1.jsonp
```
$.ajax({
type:"method",
url:"",
dataType:"jsonp",
jsonp:"callback",
success:function(data){
},
error:function(xhr){
console.log(xhr.status)
}
})
```
## 2.2.服务器的解决方案
![](https://box.kancloud.cn/c93345b131a9e3baf9129b22bdd62f38_679x264.png)
## 2.3.js中script标签不受同源策略的影响也可以实现跨越
```
var script = document.createElement("script");
script.src = "http://api.douban.com/v2/movie/subject/1764796?&callback=handleResponse";
document.body.prepend(script);
function handleResponse(res) {
// 对response数据进行操作代码
console.log(res)
}
```
- 1.JS的基础知识
- (1)调试
- (2)变量
- (3)数据类型
- 数据类型之间的转换
- (4)全局变量和局部变量
- (5)运算符和表达式
- (6)数组
- 2.控制语句DOM,BOM,事件
- (1)控制语句
- (2)DOM的基础
- 节点
- 改变样式
- DOM事件
- 3.函数
- (1)声明函数
- (2)构造函数
- (3)函数的参数
- (4)函数的传参
- (5)改变this
- (6)重载
- (7)回调函数
- 4.数组
- (1)创建数组
- (2)增删改查
- (3)字符串与数组的转换
- 5.正则
- (1)创建正则
- (2)字符串中支持正则
- (3)语法
- 最核心的元字符
- 6.ajax
- (1)原生ajax
- (2)http,get,post
- (3)跨域
- (4)jQuery-ajax
- (5)axios
- 7.面向对象
- (1)原型
- (2)原型链,继承
- (3)多态
- 8.es6小结
- 9.js+canvas实现验证码
- 10.js的作用域
- 11.闭包
- 实例
- toggle
- 图片切换
- swiper
- 遮罩颜色渐变
- 表格添加
- 瀑布流
- ajax数据请求渲染
- 百度地图