课程表

Atom课程

工具箱
速查手册

Atom JS代码片段补全

当前位置:免费教程 » 软件/图像 » Atom

题外话

这款插件就比较重量级了,用熟悉了写原生 JS 的效率要提升很多。而且,不仅支持 JS 还包含了 nodejs snippet。

javascript-snippets

插件作者: zenorocha

Github地址 : https://github.com/zenorocha/atom-javascript-snippets

内置了丰富的 JS snippet。而且也很好理解和记忆,耍多了会上手的。

安装

  • 在设置中心搜索安装

代码片段(Tab 或者 Enter 补全)

Console 命令

[cd] console.dir — 这条命令可以遍历一个对象内容

  1. console.dir(${1:obj});

[ce] console.error — 打印出信息带有错误图标

  1. console.error(${1:obj});

[cl] console.log — 打印出信息

  1. console.log(${1:obj});

[cw] console.warn — 打印带有警告图标的信息

  1. console.warn(${1:obj});

DOM — 文档对象模型

[ae] addEventListener — 事件监听

  1. ${1:document}.addEventListener('${2:event}', function(e) {
  2. ${0:// body...}
  3. });

[ac] appendChild — 增加子元素

  1. ${1:document}.appendChild(${2:elem});

[rc] removeChild — 删除子元素

  1. ${1:document}.removeChild(${2:elem});

[cel] createElement — 创建元素

  1. ${1:document}.createElement(${2:elem});

[cdf] createDocumentFragment — 创建文档碎片节点

  1. ${1:document}.createDocumentFragment(${2:elem});

[ca] classList.add — 冷门属性,为了解决 className 不能解决出现,没用过

  1. ${1:document}.classList.add('${2:class}');

[ct] classList.toggle — 同上

  1. ${1:document}.classList.toggle('${2:class}');

[cr] classList.remove — 同上

  1. ${1:document}.classList.remove('${2:class}');

[gi] getElementById — 获取元素ID

  1. ${1:document}.getElementById('${2:id}');

[gc] getElementsByClassName — 获取元素类名[返回值为数组]

  1. ${1:document}.getElementsByClassName('${2:class}');

[gt] getElementsByTagName — 获取标签集合[返回值是一个nodeList,非数组]

  1. ${1:document}.getElementsByTagName('${2:tag}');

[ga] getAttribute — 获取属性值

  1. ${1:document}.getAttribute('${2:attr}');

[sa] setAttribute — 设置属性值

  1. ${1:document}.setAttribute('${2:attr}', ${3:value});

[ra] removeAttribute — 移除属性值

  1. ${1:document}.removeAttribute('${2:attr}');

[ih] innerHTML — 代码块插入 html 结构

  1. ${1:document}.innerHTML = '${2:elem}';

[tc] textContent — 纯文本,裸奔的 innerHTML

  1. ${1:document}.textContent = '${2:content}';

[qs] querySelector — HTML5 新属性,获取选择器,类似 JQ 的 $(‘div#name’)

  1. ${1:document}.querySelector('${2:selector}');

[qsa] querySelectorAll — 同上,都支持多个选择器,但这个返回一个 nodeList

  1. ${1:document}.querySelectorAll('${2:selector}');

Loop

[fe] forEach — 遍历数组或者对象用的方法

  1. ${1:myArray}.forEach(function(${2:elem}) {
  2. ${0:// body...}
  3. });

[fi] for in — 遍历对象用的方法

  1. for (${1:prop} in ${2:obj}) {
  2. if (${2:obj}.hasOwnProperty(${1:prop})) {
  3. ${0:// body...}
  4. }
  5. }

Function

[fn] function — 函数声明

  1. function ${1:methodName} (${2:arguments}) {
  2. ${0:// body...}
  3. }

[afn] anonymous function —- 匿名函数

  1. function(${1:arguments}) {
  2. ${0:// body...}
  3. }

[pr] prototype — 原型

  1. ${1:ClassName}.prototype.${2:methodName} = function(${3:arguments}) {
  2. ${0:// body...}
  3. }

[iife] immediately-invoked function expression — 函数表达式

  1. (function(window, document, undefined) {
  2. ${0:// body...}
  3. })(window, document);

[call] function call — 回调函数

  1. ${1:methodName}.call(${2:context}, ${3:arguments})

[apply] function apply — 回调函数

  1. ${1:methodName}.apply(${2:context}, [${3:arguments}])

[ofn] function as a property of an object — 函数声明

  1. ${1:functionName}: function(${2:arguments}) {
  2. ${3:// body...}
  3. }

Timer

[si] setInterval — 根据设置时间不断调用的方法

  1. setInterval(function() {
  2. ${0:// body...}
  3. }, ${1:delay});

[st] setTimeout — 同上,区别在于一般不会重复执行

  1. setTimeout(function() {
  2. ${0:// body...}
  3. }, ${1:delay});

NodeJS

[ase] assert.equal

  1. assert.equal(${1:actual}, ${2:expected});

[asd] assert.deepEqual

  1. assert.deepEqual(${1:actual}, ${2:expected});

[asn] assert.notEqual

  1. assert.notEqual(${1:actual}, ${2:expected});

[me] module.exports

  1. module.exports = ${1:name};

[pe] process.exit

  1. process.exit(${1:code});

[re] require — 请求模块

  1. require('${1:module}');

BDD

[desc] describe

  1. describe('${1:description}', function() {
  2. ${0:// body...}
  3. });

[ita] it asynchronous

  1. it('${1:description}', function(done) {
  2. ${0:// body...}
  3. });

[its] it synchronous

  1. it('${1:description}', function() {
  2. ${0:// body...}
  3. });

[itp] it pending

  1. it('${1:description}');

Misc

[us] use strict — JS语法使用严格模式

  1. 'use strict';

[al] alert — 弹窗

  1. alert('${1:msg}');

[pm] prompt — 提示弹窗

  1. prompt('${1:msg}');
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号