1. 代码求值机制 JavaScript中,有很多不同的代码求值机制. ● eval()函数 ● 函数构造器 ● 定时器 ● <script>元素 - 用eval()方法进行求值 作为定义在全局作用域内的eval()方法,该方法将在当前上下文内,执行所传入字符串形式的代码. 基本功能 ● 该方法将执行传入代码的字符串 ● 在调用eval()方法的作用域内进行代码求值 例如: eval("5+5") (function(){ eval("var ninja = 6&…
最近,在阅读 jQuery 之父 John Resig 力作:Secrets of the JavaScript Ninja(JavaScript忍者秘籍).关于第九章提及的 JavaScript 之运行时代码,感觉蛮不错.因此,顺便在博客园记录一下. 有关运行时.编译时就不再做过多介绍,相信,大部分同学或多或少熟悉一门强类型语言,比如:C#.Java 之类.就以 C# 为例,程序员编写的 .cs 文件最终将编译成 .dll 程序集中,如果 .cs 中有语法错误,将无法编译通过.而像 JavaS…
JavaScript 对引擎.运行时.调用堆栈的概述理解  随着JavaScript越来越流行,越来越多的团队广泛的把JavaScript应用到前端.后台.hybrid 应用.嵌入式等等领域. 这篇文章旨在深入挖掘JavaScript,以及向大家解释JavaScript是如何工作的.我们通过了解它的底层构建以及它是怎么发挥作用的,可以帮助我们写出更好的代码与应用.据 GitHut 统计显示,JavaScript 长期占据GitHub中 Active Repositories 和 Total Pu…
// 运行时 其实就是oc的底层  平时写的代码 最终都是转成底层的运行时代码以下面程序为例子: 如果我们想要看我们的main.m文件底层转换成了怎样的运行时代码 ,我们可以这样做. 1.打开终端  ,输入cd  切换到我们当前项目所在目录 2.然后ls -l 看一下当前目录下面的文件 3.然后输入命令:clang -rewrite-objc main.m  然后回车你会看到如下画面 4.这个时候我们再次输入 ls -l 查看我们当前目录下的文件 你会发现多了一个main.cpp文件 实际是c+…
uni的vue代码是如何在微信小程序里面执行的,对此比较感兴趣所以去调试学习了一波. 准备工作 // 在vue.config.js里打开非压缩的代码 module.exports = { configureWebpack: config => { config.devtool = 'none' config.mode = 'development' } } // 运行时代码路径 node_modules\@dcloudio\uni-mp-weixin\dist\index.js // uni修改…
转载自开源中国 译者:Tocy, 凉凉_, 亚林瓜子, 离诌 原文链接 英文原文:How JavaScript works: an overview of the engine, the runtime, and the call stack 随着 JavaScript 变得越来越流行,很多团队在他们的堆栈中实现诸多层级的支持 - 前端.后端.混合应用程序.嵌入式设备等等. 本文是该系列文章的第一篇,旨在深入研究 JavaScript 及其实际工作原理:我们认为通过了解 JavaScript 的…
https://www.oschina.net/translate/how-does-javascript-actually-work-part-1 随着 JavaScript 变得越来越流行,很多团队在他们的堆栈中实现诸多层级的支持 - 前端.后端.混合应用程序.嵌入式设备等等. 本文是该系列文章的第一篇,旨在深入研究 JavaScript 及其实际工作原理:我们认为通过了解 JavaScript 的构建块以及它们如何一起协作的,你将能够编写更好的代码和应用. 如 GitHut 统计中所示,J…
Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的 我们需要了解的是 Objective-C 是一门动态语言,它会将一些工作放在代码运行时才处理而并非编译时.也就是说,有很多类和成员变量在我们编译的时是不知道的,而在运行时,我们所编写的代码会转换成完整的确定的代码运行. 因此,编译器是不够的,我们还需要一个运行时系统(Runtime system)来处理编译后的代码. Runtime 基本是用 C 和汇编写…
面向对象和原型 理解原型 在JavaScript中,可通过原型实现继承.原型的概念很简单.每个对象都含有原型的引用,当查找属性时,若对象本身不具有该属性,则会查找原型上是否有该属性. 每个对象都可以有一个原型,每个对象的原型也可以拥有一个原型,以此类推,形成一个原型链.查找特定属性将会被委托在整个原型链上,只有当没有更多的原型可以进行查找时,才会停止查找. 对象构造器与原型 当用作为函数调用Ninja时,什么都不会做.在用new操作符时返回一个对象,并且设置了它的原型为Ninja,所以ninja…
正则表达式 是一个拆分字符串并查询相关信息的过程. 练习网站:JS Bin 正则表达式测试网站:Regular Expression Test Page for JavaScript 正则表达式进修 正则表达式 通常被称为 模式,是一个用简单方式描述或匹配一系列符合某个句法规则的字符串. 创建正则表达式的两种方法: (1)通过正则表达式字面量(推荐): var pattern = /test/; 就像字符串是用引号进行界定一样,正则字面量是用 正斜杠 进行界定的. (2)通过构造 RegExp…