JavaScript的子集和超集
1、JavaScript子集
JavaScript子集的定义大部分都是出于安全考虑,仅仅有使用这门语言的一个安全的子集编写脚本,才干让代码运行得更安全、更稳定。比方怎样更安全地运行一段由不可信第三方提供的广告代码。JavaScript子集一般会移除JavaScript的一些特性。如ADsafe、dojox.secure、Caja、FBJS以及微软的Web Sandbox等,这些都实现了安全子集。
2、常量和局部变量
常量用const表示。局部变量用let表示,let声明一个块级作用域。超出作用域变量无效。
3、解构赋值
解构赋值是一种混合式赋值,是python中的一个概念,直接看以下的样例:
let [x, y] = [1, 2]; // 等价于 let x = 1, y = 2;
4、迭代器
迭代器使用方法相似于python,迭代器必须包括next()方法,对于可迭代对象,必须定义一个名叫d__iterator__()的方法。
5、生成器
生成器,使用方法同python,yield关键字用于生产,还有两个方法,next()和send()。
6、数组推导
数组推导,使用方法同python,格式例如以下:
[ expression for (variable in object) if (condition) ]
比如:
let evensquares = [x * x for (x in range(0, 10)) if (x % 2 == 0)]
evensquares是一个数组,表示0~10之间偶数的平方。
7、生成器表达式
生成器表达式。使用方法也相似于python,把数组推导中的方括号替换为圆括号就可以。返回对象而非数组。
8、函数简写
函数简写适用于简单的函数,即表达式闭包。省略return关键字和花括号,例如以下样例:
let val = function(x) x+1;
9、多catch语句的异常处理
异常处理中。能够有多个catch语句,并且捕获条件能够使用if进行推断。捕获我们须要的东西。
10、E4X
E4X即ECMAScript for XML,是JavaScript的一个标准扩展,它为处理XML文档定义了一系列强大的特性。
JavaScript的子集和超集的更多相关文章
- python集合set,交集,并集,差集,对称差集,子集和超集
python集合set,交集,并集,差集,对称差集,子集和超集 x = {1, 2, 3, 4} y = {2, 4, 5, 6} # 交集(取x中与y中相同部分) print(x.intersect ...
- JavaScript权威指南--Javascript子集和扩展
知识要点 本章讨论javascript的子集和超集,其中子集的定义大部分处于安全考虑.只有使用这门语言的一个安全的子集编写脚本,才能让代码执行的更安全.更稳定.比如如何更安全地执行一段由不可信第三方提 ...
- 第十章:Javascript子集和扩展
本章讨论javascript的集和超集,其中子集的定义大部分处于安全考虑.只有使用这门语言的一个安全的子集编写脚本,才能让代码执行的更安全.更稳定.ECMScript3标准是1999年版本的,10年后 ...
- 第一章:Javascript语言核心
本节是javascript语言的一个快速预览,也是本书的第一部分快速预览. 读此书之前,感谢淘宝技术团队对此javascript核心的翻译,感谢弗拉纳根写出此书.感谢你们无私的分享,仅以此笔记献给你们 ...
- Note | Javascript权威指南[第六版] 第1章:Javascript概述
JavaScript是一门高端的.动态的.弱类型的编程语言,非常适合面向对象和函数式的编程风格.JavaScript的语法源自Java,它的一等函数(first-class function)来 ...
- (六)我的JavaScript系列:更好的JavaScript之CoffeeScript
世界上的很多天才都在为构建更好的JavaScript而努力.已经有了很多尝试,其中最有前途的,无非就是CoffeeScript和TypeScript了.面对CoffeeScript,我有一见如故的感觉 ...
- 在javascript中使用Json
jSON是JavaScript面向对象语法的一个子集.由于JSON是JavaScript的一个子集,因此它可清晰的运用于此语言中. 文本生成json对象,必须在外面加一对括号. js 代码 var m ...
- 《javascript权威指南》读书笔记——第一篇
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...
- 《JavaScript高级程序设计》学习笔记
系统学习JS, 从<JavaScript高级程序设计>入门,通过学习jQuery或者angularJS源码来进阶. 第1章 JavaScript简介 1.JS问世的目的是处理以前由服务器端 ...
随机推荐
- Vmware qemu-kvm 虚拟化測试
[root@kvm1 cloud]# lsmod | grep kvm kvm_intel 55496 3 kvm 337772 1 kvm_intel [root@kvm1 cloud]# egre ...
- CentOS 搭建 Mysql MMM 高可用架构
环境 CentOS Mysql 5.1 前提 安装了EPEL,详细安装步骤请參照 http://blog.csdn.net/robinsonmhj/article/details/36184863 机 ...
- js最近天数
//七天查询 recent(6); //30天查询 recent(30); //最近天数 var recent=function(arg){ var myDate = new Date(); //获取 ...
- oh-my-zsh upgrade problem
Oh-My-ZSH upgrade issue with bad substitution message Any problem with automatic Oh-My-Zsh upgrade ...
- Java 开发 2.0: 现实世界中的 Redis
原文地址:http://www.ibm.com/developerworks/cn/java/j-javadev2-22/ 之前,我已在本系列中讨论过 NoSQL 的概念,也介绍了一些与 Java 平 ...
- CloudFoundry 云平台部署
CloudFoundry云平台部署 CloudFoundry(TheOpenSourceCloudOperatingSystem)距离发布已经一年多了作为第一个开源的PaaS平台日臻成熟.在这一年里C ...
- Codefroces432 div2 A,B,C
A. Arpa and a research in Mexican wave Arpa is researching the Mexican wave. There are n spectators ...
- [Chromium文档转载,第002章]Mojo C++ Bindings API
Mojo C++ Bindings API This document is a subset of the Mojo documentation. Contents Overview Getting ...
- Vim插件使用技巧(转)
在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然 ...
- GO语言为结构体排序
package main import ( "fmt" "io/ioutil" "sort" "time" ) type ...