JavaScript
文章平均质量分 75
明天回火星
less is more
展开
-
ES6学习札记
由于JavaScript语言的缺点和弱点,加之上次ESMCScript修订还是在2009年。es6终于在2015年闪亮现身了,并越来越多的运用在实际开发中。整理一下学到的新特性: 1、新增let和const关键字 ① 在之前的标准中,是没有块级作用域的。 for (var i = 0; i < 3;i++){ setTimeout(原创 2016-05-10 19:42:54 · 351 阅读 · 0 评论 -
JavaScript模块化开发——AMD规范
本文介绍一下AMD规范(注意,这里的AMD和做cpu的AMD可不是一回事)。根据之前文章的知识,我们知道一个模块系统最起码要有下面这些功能:可以创建封装的模块可以定义对其他模块的依赖可以导出功能,被其他模块使用AMD是“Asynchronous Module Definition”的缩写,意思就是“异步模块定义”。从名称上就可以看出,它是通过异步方式加载模块转载 2017-12-28 14:54:00 · 462 阅读 · 0 评论 -
Array.prototype.slice.call()方法详解
在很多时候经常看到Array.prototype.slice.call()方法,比如Array.prototype.slice.call(arguments),下面讲一下其原理:1、基本讲解1.在JS里Array是一个类 slice是此类里的一个方法 ,那么使用此方法应该Array.prototype.slice这么去用 slice从字面上的意思很容易理解就是截取(当然转载 2017-12-27 17:17:11 · 498 阅读 · 0 评论 -
Javascript的in关键字
关于for-in写js的时候需要遍历一个对象的属性,把属性名和属性值都提出来,之前没遇到这种需求,查了一下可以用for in的方式.1234567891011121314151617var obj = {转载 2017-05-10 15:59:37 · 1290 阅读 · 0 评论 -
js的||和 &&的妙用
首先出个题:如图: 假设对成长速度显示规定如下: 成长速度为5显示1个箭头; 成长速度为10显示2个箭头; 成长速度为12显示3个箭头; 成长速度为15显示4个箭头; 其他都显示都显示0各箭头。 用代码怎么实现? 差一点的if,else: Js代码 复制代码代码如下:var add_level = 0; if(add_step转载 2017-05-17 16:21:35 · 378 阅读 · 0 评论 -
JavaScript模块化和闭包
JS模块化和闭包js最初作为一个在浏览器中运行的脚本语言,设计的目标是用来给html增加交互行为,早期的网站都是在服务器端生成并返回给浏览器,js也只对单独的一个html进行操作,所以模块化并没有在早期的JS中得到很好的考虑,随着浏览器js引擎越发的快速,现在已经有很多前端框架,并不依赖与服务器生成html,而是自己直接通过js来生成,最典型的例子就是我们常听到的webapp。现在所有的j转载 2017-05-26 17:29:55 · 544 阅读 · 0 评论 -
详解js之Object.defineProperty
http://segmentfault.com/a/1190000004346467这个方法了不起啊。。vue.js和avalon.js 都是通过它实现双向绑定的。。而且Object.observe也被草案发起人撤回了。。所以defineProperty更有必要了解一下了几行代码看他怎么用 var a= {} Object.defineProperty(a,"b",{转载 2017-05-26 16:49:47 · 455 阅读 · 0 评论 -
js中用构造器创建对象与字面量创建对象的区别
http://m.blog.csdn.NET/blog/z1547840014/9734179 当用new操作符调用一个函数时,就会创建一个新的JavaScript对象.接着,该函数会作为该新建对象的this值被调用,而在原始调用中所使用的参数也都将一并传递给该函数调用 下面我们来研究下使用构造器处创建对象和使用字面量创建对象的区别到底是什么,先转载 2017-05-25 17:47:38 · 1017 阅读 · 0 评论 -
从Object和Function说说JS的原型链
ECMAScript规定了两个特殊的内置对象:Object和Function。他们的特殊性在于,他们本身既是对象又是函数,而他们同时也是对象和函数的构造器。这种自己生自己的逻辑显然违反人性,如果还停留在类的继承的思想上,那么更加无法理解。 然而ECMAScript是基于原型链的,所以忘掉类的继承,从原型链入手:原型链是对象的集合,每个对象都有内部属性[[Prototype]](注1)指向转载 2017-05-11 15:35:50 · 338 阅读 · 0 评论 -
Javascript中的__proto__、prototype、constructor
下面看一个非常简单的例子:[javascript] view plain copy var Person = function(name) { this.name = name ; }; var p = new Person("Ben"); console.log(p.name); 代码简转载 2017-05-11 15:19:49 · 284 阅读 · 0 评论 -
详解js中prototype、constructor以及__proto__的关系
原文 http://www.cnblogs.com/zichi/p/4363175.html三者暧昧关系简单整理在javascript中,prototype、constructor以及__proto__之间有着“著名”的剪不断理还乱的三角关系,楼主就着自己对它们的浅显认识,来粗略地理理以备忘,有不对之处还望斧正。楼主的一句话理解就是:某个对象的cons转载 2017-05-11 15:06:27 · 3392 阅读 · 1 评论 -
instanceof深入剖析
随着 web 的发展,越来越多的产品功能都放在前端进行实现,增强用户体验。而前端开发的主要语言则是 JavaScript。学好 JavaScript 对开发前端应用已经越来越重要。在开发复杂产品中,需要使用面向对象的机制时,往往会用到复杂的 JavaScript 继承,而 instanceof 运算符是 JavaScript 语言中原生的用来判断实例继承关系的操作符。深入理解 instance转载 2016-09-22 12:08:29 · 365 阅读 · 0 评论 -
js的settimeout用法总结
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。下面是setTimeout()在js类中的使用方法:setTimeout (表达式,延时时间)setTimeout(表达式,交互时间)延时时间/交互时间是以豪秒为单位的(1000ms=1s)setTimeout 在执行时,是在载入后延迟指定时间后,去执行一次表达式,仅执行一次setTim转载 2016-09-20 14:20:39 · 1606 阅读 · 0 评论 -
JavaScript中this的用法
this是Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用,随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。 下面分四种情况,详细讨论this的用法。情况一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象Global。 请看下面这段代码,它的运转载 2016-07-20 10:53:01 · 422 阅读 · 0 评论 -
JS的垃圾回收机制和内存分配
1 JS的垃圾回收机制JS解释器和C#,java的运行环境一样有垃圾回收机制,程序员不需要手动跟踪释放内存。 垃圾回收机制:就是释放那些不再使用的变量。什么是不再使用?就是生命周期结束的变量,可能是全局的和局部的。 例如:function A(){ var i = {name:'qiqi'};}function B(){ var i = {na原创 2016-07-08 11:31:29 · 6629 阅读 · 0 评论 -
JavaScript跨域的6种方法
1 通过JSONP跨域(此方法对全域跨域和子域跨域都满足)Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据。为什么我们从不同的域(网站)访问数据需要一个特殊的技术(JSONP )呢?这是因为同源策略。例如有个1.html,其中的代码需要获取一个不同域上的json数据,假设这个json数原创 2016-07-14 19:56:11 · 753 阅读 · 0 评论 -
Javascript简介和基础知识
一、Javascript简史: Javascript在问世前,必须把表单数据发送到服务器端才能确定用户是否有没有填写某个必填项、是否填了脏值,netscape navigator(网景公司的浏览器)希望通过js来解决此问题,早期js出现就是为了简单的数据验证。JS的组成:① ECMAScript: 定义知识这门语言的基础,,它与浏览器无依赖关系。常见的浏原创 2016-05-04 23:55:23 · 421 阅读 · 0 评论 -
常用的Javascript设计模式
《Practical Common Lisp》的作者 Peter Seibel 曾说,如果你需要一种模式,那一定是哪里出了问题。他所说的问题是指因为语言的天生缺陷,不得不去寻求和总结一种通用的解决方案。不管是弱类型或强类型,静态或动态语言,命令式或说明式语言、每种语言都有天生的优缺点。一个牙买加运动员, 在短跑甚至拳击方面有一些优势,在练瑜伽上就欠缺一些。术士和暗影牧师很容易成转载 2017-12-29 14:49:47 · 651 阅读 · 0 评论