js学习日记 (1)createDocumentFragment() ES6 => 箭头
只能说是会用和记载,深入理解还需时间。
有关性能优化:
使用createdocumentfragment()方法可以创建某个具有节点该有的所有属性的节点。
使用情况: 提取文档中的某个小部分,修改文档中的小节点,添加部分内容在节点尾部或者某个标志处。
虽然可以用文档的文档对象来在这些情况中使用,但如果防止文件结构被破坏,createDocumentFragment() 方法可以更安全改变文档的结构及节点。
一般这样用:
let newLists=document.createDocumentFragment();
newLists.appendChild(li);
lists.appendChild(newLists);
上面lists则为原来文档中有的,对newlists进行操作,例如再添加一个li文档节点,这样lists吸收newlists为子节点就可以进行节点的添加。
这样就创建了一个新的文档碎片,可以向指定位置添加。
块级作用域使用let,不过好像不太推荐。
ES6的新语法 => 箭头使用:
可以优化js语句,例如
- // ES5
- var selected = allJobs.filter(function (job) {
- return job.isSelected();
- });
- // ES6
- var selected = allJobs.filter(job => job.isSelected());
也就是说省去了function()这一步骤。
不过好像用着失去函数定义,虽然为了简化js,但是写法更高端可读性变差了。 是否会影响this的使用以及相关函数表达式的声明初始化呢。
小语法重新记录(不漏过一寸)
filter() 方法
创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
filter() 不对空数组进行检测。
filter() 不改变原始数组。
用法:
aqiData.filter(city => city[1]>=60) 使用箭头与fliter
.sort方法
aqiData.sort((a,b)=>b[1]-a[1]) 使用.sort排序 从大到小 通过这样排序得到排好序的数组。 两者结合使用可以选择特定范围的数组,并且是排好序的~
forEach (ie不能使用) 使用for循环用的烦时候可以考虑,foreach每个元素的循环: 用法:
JavaScript数组的 forEach()方法调用数组中的每个元素
aqiData.forEach(function(value, index, array) { });
可以循环返回 值 索引 数组 可以用这个 来搞事情。 总结就到这里,先去完善我的工程。
js学习日记 (1)createDocumentFragment() ES6 => 箭头的更多相关文章
- js学习日记-隐式转换相关的坑及知识
隐式转换比较是js中绕不过去的坎,就算有几年经验的工程师也很有可能对这块知识不够熟悉.就算你知道使用===比较从而避免踩坑,但是团队其它成员不一定知道有这样或那样的坑,有后端语言经验的人常常会形成一个 ...
- js学习日记-对象字面量
一.对象字面量语法 var person={ name:'小王', age:18, _pri:233 } 成员名称的单引号不是必须的 最后一个成员结尾不要用逗号,不然在某些浏览器中会抛出错误 成员名相 ...
- js学习日记-变量的坑
js变量细节是前端面试经常遇到的问题,可见其重要程度,要想掌握这个知识点,需注意以下几点: 变量提升 所谓变量提升,就是使用了var关键字申明的变量,会提升到所在作用域的顶部.es5的作用域分为全局作 ...
- js学习日记-new Object和Object.create到底干了啥
function Car () { this.color = "red"; } Car.prototype.sayHi=function(){ console.log('你好') ...
- js学习日记-常用正则符号参考
预定义类 量词 贪婪.惰性.支配性量词 前瞻 边界 RegExp是全局对象,RegExp.$1...$9是全局属性.当执行任意正则表达式匹配操作时,JavaScript会自动更新全局对象RegExp上 ...
- js学习日记-各种宽高总结(配图)
1.窗口和浏览器 window.innerWidth.window.innerHeight 浏览器内部可用宽高 window.outerWidth.window.outerHeight 浏览器 ...
- ES6学习笔记<二>arrow functions 箭头函数、template string、destructuring
接着上一篇的说. arrow functions 箭头函数 => 更便捷的函数声明 document.getElementById("click_1").onclick = ...
- 前端分享----JS异步编程+ES6箭头函数
前端分享----JS异步编程+ES6箭头函数 ##概述Javascript语言的执行环境是"单线程"(single thread).所谓"单线程",就是指一次只 ...
- 前端综合学习笔记---异步、ES6/7、Module、Promise同步 vs 异步
同步 vs 异步 先看下面的 demo,根据程序阅读起来表达的意思,应该是先打印100,1秒钟之后打印200,最后打印300.但是实际运行根本不是那么回事 console.log(100) setTi ...
随机推荐
- 用户 'IIS APPPOOL\DefaultAppPool'登录失败
今天发布网站遇到这个问题.问题直接说明iis 应用程序池. 后来百度发现是应用程序池 进程模型中的标识项设置问题,这个我用的是本地数据库所以是localsystem.在此小弟谢谢这位 http:/ ...
- Mongoose的模糊查询
var Commidity = require("./Model/commiditiesModel"); function search(response,request,key) ...
- JQ 操作样式,背景切换
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 如何查看SQLServer数据库每个表占用的空间大小?
如何查看SQLServer数据库每个表占用的空间大小? 创建存储过程: CREATE PROCEDURE [dbo].[sys_viewTableSpace]AS BEGIN SET NOCOUNT ...
- intellj idea maven 无效的目标发行版: 1.8
File ->settings->maven->runner->jre -> jdk1.8
- golang make the first character in a string lowercase/uppercase
import ( "unicode" ) func UcFirst(str string) string { for i, v := range str { return stri ...
- Github android客户端源代码分析之一:环境搭建
1.下载相应的包及项目,参考https://github.com/github/android/wiki/Building-From-Eclipse. 2.若需查看某些包的源文件或者javadoc,则 ...
- Error:(108) No resource identifier found for attribute 'style' in package 'android'
Error:(108) No resource identifier found for attribute 'style' in package 'android' 解决方案: 这是错误的写法: a ...
- python运维开发(七)----面向对象(上)
内容目录: 面向对象应用场景 类和对象的创建 类中的__init__构造方法 self理解 面向对象的三大特性:封装.继承.多态 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装 ...
- 正三角形的外接圆面积,nyoj-274
正三角形的外接圆面积 时间限制:1000 ms | 内存限制:65535 KB 难度:0 描述给你正三角形的边长,pi=3.1415926 ,求正三角形的外接圆面积. 输入 只有一组测试数据 ...