从c++看js的那些概念】的更多相关文章

感觉c++逐渐没落了,js正风生水起,各种概念层出不穷. reactjs,flux ,angularjs cmd,amd模块化设计. 初看起来好像很高端的样子,后来发现也不过是如此. c++毕竟经历了那么久的工业实践考验,许多问题很早就碰到并解决,已经不是问题了. reactjs.angularjs,一个扩展js.一个扩展html,来实现界面和逻辑的分离,以及单向或者双向数据流. 和c++里,最早用代码写界面,最后出现了界面文件.对于界面文件有两种方法,一种是直接把界面编译成代码,一种是在运行时…
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js更是难,中间需要不断的积累与重温.因此不是读一两遍就能把这书吃透,需要多读,可谓温故而知新,可以为师矣. 很多人看这些厚的书都是三天打鱼两天晒网,很少能看下去,能记住的东西往往前3章的内容,所以我写博客就是为了能和大家一起来读这本书,一起学js. 温馨提示:笔记言辞会有主观…
一.介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解. 红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js更是难,中间需要不断的积累与重温. 本书不是读一两遍就能把这书吃透,需要多读,可谓温故而知新,可以为师矣. 很多人看这些厚的书都是三天打鱼两天晒网,很少能看下去,能记住的东西往往前3章的内容,所以我写博客就是为了能和大家一起来读这本书,一起学JS. 二.基本概念(躯壳…
来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(三) 如果你刚学js,想快速了解到js的基本概念,以下将会是一篇不错的引导文章: 语法 数据类型 流控制语句 理解函数 首先讲个段子:曾经有个人很天真地以为javascript和java肯定是一家,因为学过java,觉得javascript学习肯定就是三下五除二了.了解了一些javascript语法后,直到看过一遍淘宝前端团队译的<Javascript权威指南>,大为惊叹,刹那间愣住…
JS的基本概念 任何语言的核心都必然会描述这门语言最基本的工作原理.而描述的内容通常都要涉及这门语言的语法,操作符,数据类型,内置功能等用于构建复杂解决方案的概念.Ecma-262通过叫做EcmaScript的“伪语言”,为我们描述javascript的多有这些基本概念. 3.1语法 EcmaScript的语法大量借鉴了C语言的语法.因此熟C语言的开发人员在接受ECMAScprit,会有一种轻松的感觉. 3.1.1 区分大小写 要理解的第一个概念就是ECMAScript中的一切(变量,函数名和操…
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto } .crayon-line span::after { content: " " } p { font-size: 15px; text-indent: 2em } #colorbox.crayon-colorbox,#cboxOverlay.crayon-colorbox,.crayon-colorbox #cboxWr…
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js更是难,中间需要不断的积累与重温.因此不是读一两遍就能把这书吃透,需要多读,可谓温故而知新,可以为师矣. 很多人看这些厚的书都是三天打鱼两天晒网,很少能看下去,能记住的东西往往前3章的内容,所以我写博客就是为了能和大家一起来读这本书,一起学js. 温馨提示:笔记言辞会有主观色彩,…
WebGL.Asm.js和WebAssembly概念简介 转:http://www.techbrood.com/zh/news/webgl/webgl%E3%80%81asm_js%E5%92%8Cwebassembly%E6%A6%82%E5%BF%B5%E7%AE%80%E4%BB%8B.html iefreer 发表于 2017-02-27 13:00:56 标签: webassembly, webgl, html5, asm.js 随着HTML技术的发展,网页要解决的问题已经远不止是简单…
js引出函数概念的案例   1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title></title> 6 <script> 7 /*输入两个数,再输入一个运算符,得到结果*/ 8 var num1 = window.prompt("请输入第一个数"); 9 num1=parseFloat(num1);…
再看Scrapy(1) 基本概念 1 准备 安装scrapy: 国内镜像源(官方的pypi不稳定)安装 pip3 install -i https://pypi.douban.com/simple/ scrapy 安装virtualenvwrapper: 下载 pip3 install virtualenvwrapper 创建目录存放虚拟环境 mkdir ~/.virtualenvs 配置环境变量 export WORKON_HOME=~/.virtualenvs source /usr/loc…
js的核心概念: 原型.对象(Object).函数(Function); 原型:路由路径上非叶子结点的对象: 对象:无序属性(包括函数)的集合: 函数:函数上下文的集合: 原型: 原型的创建.指定.修改: 数据的归属:原型?当前对象? 原型的引用:引用原型对象本身?引用原型的引用? 对象创建: 对象创建过程中对原型的维护 new方式创建:object.构建函数: 字面量创建:{} 工厂函数创建 函数: 构建函数的双重属性 对象原型与创建原型: 对象.原型.构建函数的关系? js的数据类型: 值类…
一文带你看清HTTP所有概念   上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继续来介绍(此篇文章会介绍所有标头的概念,但没有深入底层) HTTP 标头 先来回顾一下 HTTP1.1 标头都有哪几种 HTTP 1.1 的标头主要分为四种,通用标头.实体标头.请求标头.响应标头,现在我们来对这几种标头进行介绍 通用标头 HTTP 通用标头之所以这样命名,是因为与其他三个类别不同,…
一.变量的作用域要懂得闭包,起首必须懂得Javascript特别的变量作用域.变量的作用域无非就是两种:全局变量和局部变量.Javascript说话的特别之处,就在于函数内部可以直接读取全局变量. Js代码 var n=999; function f1(){ alert(n); } f1(); // 999另一方面,在函数外部天然无法读取函数内的局部变量.Js代码 function f1(){ var n=999; } alert(n); // error这里有一个处所须要重视,函数内部声明变量…
js里常用的如下两种继承方式: 原型链继承(对象间的继承) 类式继承(构造函数间的继承) 由于js不像java那样是真正面向对象的语言,js是基于对象的,它没有类的概念.所以,要想实现继承,可以用js的原型prototype机制或者用apply和call方法去实现 在面向对象的语言中,我们使用类来创建一个自定义对象.然而js中所有事物都是对象,那么用什么办法来创建自定义对象呢?这就需要用到js的原型: 我们可以简单的把prototype看做是一个模版,新创建的自定义对象都是这个模版(protot…
今天,我们来说一说requireJS的基本概念,在下一篇随笔中我们再去讨论讨论requireJS的使用步骤 这一篇都是一些概念性比较强的东西,希望大家擦亮自己的钛合金狗眼好好看看概念,好吧 首先,什么是requireJS呢,requireJS是一个JavaScript文件或者模块的加载器.它可以提高JavaScript文件的加载速度,避免不必要的堵塞 那我们使用require有什么好处呢:1.实现JS的异步加载 2.管理模块间的依赖关系,便于代码的维护和书写 requireJS遵循的规范:1.A…
最近在看Typescript,顺便看了一些函数式编程,然后半个国庆假期就没有了.做个笔记,分几个部分写吧. 最开始接触函数式编程的时候,第一个接触的概念就是高阶函数,和柯里化.咋一看,这不就是长期用来讲作用域的demo吗?我在日常也有用啊,有啥吗? 其实呢,设计模式或则编程范式往往不在于技巧,而在于思想.函数式编程就是一种编程的范式,并不在于技巧多么叼,而在于它的思想.其次才是由设计思想才衍生出来的技巧,技巧往往而言是服务于思想的.所以我觉得最开始学习函数式编程最好先了解一些相关概念和思想会比较…
什么是 JavaScript 语言 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-…
一.我们经常困惑,对象究竟是什么,其实这是一种思维,一种意识上的东西,就像我们都说    世界是有物质组成的道理一样,理解了下面的几句话!对象也不是那么抽象!    1.javascript中的所有事物都是对象,字符串.数值.数组.函数!    而且js还允许自定义对象!    2.对象就只是带有属性和方法的特殊数据类型    3.属性是与对象相关的值,方法是能够在对象上执行的动作! 其实在这里的时候我们应该就有一个疑问要解决了,我们说函数是一个对象,为什么?    很简单,js中所有的事物都是…
一.函数是用来帮助我们封装.调用代码的最方便的工具! 二.函数的创建方法有三种: 三.函数的创建方式有3种,调用方式也不是单一的,调用方式有4种!      1.作为一个函数去调用 函数名+();(函数作为全局对象调用,会使this的值成为全局对象,使用window对象作为一个变量,容易造成程序崩溃!)       2.函数作为方法调用:(函数作为对象的方法调用,会使this的值成为对象的本身!)      我们举例说明: 3.使用构造函数调用函数:(构造函数中的this没有任何值) 4.作为函…
原文地址:http://zhidao.baidu.com/link?url=f81iaijX6nzY99Wz43v-p_qZEn4cCaomT4LD6NH5jVtI0yK2V76VJWefih51vAiQbPzkhCz_3ry8Y-FAQA0-jK 先从闭包特点解释,应该更好理解. 闭包的两个特点: 1.作为一个函数变量的一个引用 - 当函数返回时,其处于激活状态.2.一个闭包就是当一个函数返回时,一个没有释放资源的栈区. 其实上面两点可以合成一点,就是闭包函数返回时,该函数内部变量处于激活状态…
来自知乎的问题:JavaScript 怎样高效拼接字符串? 请把以下用于连接字符串的JavaScript代码修改为更高效的方式: var htmlString ='< div class=”container” > ' + '< ul id=”news-list” > '; for (var i = 0; i < NEWS.length; i++) { htmlString += '< li > < a href="' +NEWS[i].LINK…
老实说,写这篇文章的时候心里是有点压抑的,因为受到打击了,为什么?就 因为喜欢折腾不小心看到了这个"简单"的函数:        for (var i = 0; i < 5; i++) {             setTimeout(function () {                 console.log(i)             }, i * 1000);         }         console.log(i); 什么?这不就是我很久之前看到的先打印一…
模块的概念 一个复杂的项目开发中,会写很多js文件,一个js文件执行某些特定的功能,那么每个js都可以称为一个模块,这就是模块的概念 每个js模块内部数据/实现是私有的, 只是向外部暴露一些接口(方法)与外部其它模块通信 模块化的进化史 全局function模式:将不同的功能封装成不同的全局函数 问题: Global被污染了, 很容易引起命名冲突 //数据 let data = 'atguigu.com' //操作数据的函数 function foo() { console.log(`foo()…
概述 前几天研究了一个下开发者工具的performance面板,挺有意思的.文件的加载顺序又对页面性能有着至关重要的影响.所以我用performance面板研究了以下几种配置的加载顺序,把过程和结果记录下来,供以后开发时参考,相信对其他人也有用. js放在body最后的加载. js放在body前面的加载. async,defer的加载. setTimeout的加载. onload事件的加载. DOMContentLoaded事件的加载. onreadystatechange事件的加载. 加入jq…
以下是百度百科对柯里化函数的解释:柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术.概念太抽象,可能并不怎么好理解,下面来举个栗子说明什么是函数柯里化. var obj = { name: "aaaaaaaaaa" }; var name = "bbb"; function fn(n1, n2) { console.log(this.name); console.lo…
1.闭包,前面已经说过,这里不再做说明 2.封装    对于JS而言,他不像java一样存在私有,公有 ,可以让对象在一些细节方面存在差异,降低他们的耦合程度,对数据做一些约束,我们可以更容易调试,封装是面向对象的基石.那么JS既然不具备这些特性,我们就需要想办法自己去实现.我们通过代码去分析,什么是私有属性和方法,什么是特权属性和方法,什么是公有属性和方法,什么是公有静态属性和方法. 私有属性和方法:函数有作用域,在函数内用var 关键字声明的变量在外部无法访问,私有属性和方法本质就是你希望在…
一.前言 主要讲解一下多线程中的一些概念,本文之后就开始针对JUC包的设计开始解读: 二.概念     线程安全     1.存在共享数据(临界资源):2.多个线程同时操作共享数据:只有同时出现这两种情况的时候才会造成线程安全问题: 解决线程安全     同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据以后在对共享数据进行操作: 多线程特性     原子性     现在的操作系统主要是通过时间分片的形式来管理线程或者进程,Java编程语言一句语言需要多条CPU指令来完成,…
前段时间看到一道题,如下:([][[]]+[])[+![]]+([]+{})[!+[]+![]]问最终打印结果,然后简单了解一下js的装箱,拆箱操作. 基本 装箱操作: 就是将基本类型(String, Number, Boolean)转为引用类型 拆箱操作: 与装箱相反,就是将引用类型转为基本类型, 常用的基本方法有: valueof , toString() 分析 像上面的那个题目,主要是拆箱操作,下面就来简单拆解分析一下吧: 1. 基础: [] ==> [] (Array); [[]] ==…
上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继续来介绍(此篇文章会介绍所有标头的概念,但没有深入底层) HTTP 标头 先来回顾一下 HTTP1.1 标头都有哪几种 HTTP 1.1 的标头主要分为四种,通用标头.实体标头.请求标头.响应标头,现在我们来对这几种标头进行介绍 通用标头 HTTP 通用标头之所以这样命名,是因为与其他三个类别不同,它们不是限定于特定种类的消息或者消…
1.正则表达式(Regular Expression) 在JS里是RegExp 两种字义方式 1. var patt1=new RegExp("e"); 2. var patt1 = /e/; RegExp 对象有 3 个方法:test().exec() 以及 compile(). 例如 /\d/.test('123'); //true /\w+/.exec('abc'); //abc compile少见 string 有四个方法search,march,replace, split…