Javascript
文章平均质量分 81
熊猫猛男
1.科技发展太快,日新月异,互联网/移动互联网/IOT,我只懂了一点点; 2.社会发展太快,用眼、用心、用行动却已无法追逐其前行的脚步。
展开
-
ECMAScript 6新特性简记
ECMAScript 6.0是JavaScript语言的2015年6月的发布版。 一.let和const命令 let:用来声明变量,用法类似于var,但是只在let命令所在的代码块内有效。 var a = []; for (let i = 0; i ) { a[i] = function () { console.log(i); }; } a[6](); // 6 con原创 2017-07-17 09:26:45 · 432 阅读 · 0 评论 -
关于Javascript循环体变量声明与初始化的效率问题
针对循环体变量声明与初始化的效率问题,将执行的简单测试代码如下: function test(n) { console.time('Internally initialized'); for (let i = 0; i ) { let a = i; } console.timeEnd('Internally initialized');原创 2017-07-17 09:27:36 · 556 阅读 · 0 评论 -
WEB跨域资源共享:Cross-origin Resource Sharing(CORS)
浏览器同源策略中的同源指协议+域名+端口三者完全一致,其中任何一个不同即为跨域 1. 浏览器同源策略是隔离潜在恶意文件的安全机制,限制信息传递和使用的边界,不是信息的保密机制。<img><script><link>以及表单提交都可实现跨域请求,但可能会不同程度受同源策略的限制,因浏览器不同而异; 2. 跨域资源共享(CORS)是一个W3C标准,是在客户端和服务端同时遵循的情况下执行的,整个CORS通信过程,都是浏览器自动完成,在编码上与同源资源共享并无不同(CORS交互中使用WithCredentials除原创 2017-09-17 19:45:09 · 2863 阅读 · 0 评论 -
JavaScript 开发总结(一)
递归与栈溢出(Stack Overflow) :递归非常耗费内存,因为需要同时保存成千上百个调用帧,很容易发生“栈溢出”错误;而尾递归优化后,函数的调用栈会改写,只保留一个调用记录,但这两个变量(func.arguments、func.caller,严格模式“use strict”会禁用这两个变量,所以尾调用模式仅在严格模式下生效)就会失真。在正常模式下或者那些不支持该功能的环境中,采用“循环”替换“递归”,减少调用栈,就不会溢出。可见,经尾递归优化之后,性能明显提升。如果不能使用尾递归优化,可使用蹦床函数原创 2017-08-10 13:28:53 · 545 阅读 · 0 评论