JS高级特性

一、JavaScript的同源策略

参考链接:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Same_origin_policy_for_JavaScript

同源策略限制了一个源(origin)中加载文本或脚本与来自其它源(origin)中资源的交互方式。

同源定义

如果两个页面拥有相同的协议(protocol),端口(如果指定),和主机,那么这两个页面就属于同一个源(origin)。

下表给出了相对http://store.company.com/dir/page.html同源检测的示例:

URL    结果    原因
http://store.company.com/dir2/other.html    成功     
http://store.company.com/dir/inner/another.html    成功     
https://store.company.com/secure.html    失败    协议不同
http://store.company.com:81/dir/etc.html    失败    端口不同
http://news.company.com/dir/other.html    失败    主机名不同
参见origin definition for file: URLs.

源继承

来自about:blank,javascript:和data:URLs中的内容,继承了将其载入的文档所指定的源,因为它们的URL本身未指定任何关于自身源的信息。

 

二、自动执行

(function() {
    alert('haha');
}());

 

三、闭包

我的理解诶闭包:就是能够从函数外部读取函数内部的局部变量
(function() { function foo(x) { var tmp = 3; return function (y) { alert(x + y + (++tmp)); } } var bar = foo(2); // bar 现在是一个闭包 bar(10); //能读取foo的x和temp变量 bar(10); }());

 

 

 

posted on 2014-05-15 15:47  hzm_frank  阅读(266)  评论(0编辑  收藏  举报

导航