tws实训笔记

7.10

  1. shift():用于把数组的第一个元素从其中删除,并返回第一个元素的值
  2. for in 是遍历键名,for of是遍历键值
"use strict";
let arr = ["a","b"];
for (let a in arr) {
    console.log(a);//0,1
}

for (let a of arr) {
    console.log(a);//a,b
}
  1. 模板字符串``  ${ }
  2. let: js增加的块级作用域,和c中的局部变量特征类似
  3. ctrl+w :选中单词
  4. 计时
  5. toFixed(2),保留小数点后两位
  6. 创建数组 let arr = new Array();
    创建对象 let obj = new Object();
    若不进行初始化,在添加属性值的时候会报错(undefined);

7.11

  1. let arr = [1,2,3,4];
    arr.splice(index,length); 删除数组元素
  2. 别用i,j 做循环变量,容易出错!!
  3. deepCopy:
* array.slice(start,[end])  该方法复制数组array中[start,end)所指定的元素,返回一个Array.
* 对象深拷贝
let deepCopy = function(source){
  let result = {};
  for(let key in source){
    result[key] = typeof source[key]===object ? deepCopy(source[key]) : source[key];
  }
  return result;
}
let map = new Map(); map.set();map.get();map.have();
let set = new Set(); set.add();set.have();
  1. 多用for-of for-in循环
  2. 不要把array.length 写成 array[array.length],可以新建一个length=array.length,
    then array[length]
  3. 不像其他编程语言,js:5/2=2.5

7.12

  1. stringObject.split(separator,howmany),返回一个字符串数组
    split("")每个字符都会被分隔
  2. arrayObject.join(separator) ,返回一个字符串.该字符串是通过把数组中的每一个元素转换为字符串,然后把这些字符串连接起来生成的.
      separator: 可选,default用逗号(,)作为分隔符
  3. 对数组操作的函数:
    shift(),unshift(),pop(),push()
  4. 第一步:结构化
     第二步:计算,逻辑
     第三步:傻瓜式打印,打印不添加任何逻辑
    三步之间相互分离,不互相依赖.Code 是将一个数据结构转化成另一个数据结构的过程
  5. TDD CI
    写测试:given-when-then
    写代码:可测试性
     可读性:一个函数15行内
     可维护性:自动化测试网络
     可扩展性
     先写测试,再写实现

7.13

  1. jasmine
  2. 1==true 0==false
  3. Math对象方法
      abs()
    ceil(),floor(),round()
    max(),min()
    pow(),sqrt()
    random() 返回0-1之间的随机数
  4. expect()
    toEqual() 类似于deepcopy的比较,对比每一个属性
    toBe() === 判断两个实例是否是同一个内存块上的实例
  5. 对于高级类型Array & Object ==/=== 是没有区别的,均是判断他们是否指向同一个内存快上的Array/Object
  6. (1.00 === 1) 类型均是Number

7.14

  1. 面向对象:
    1)单一职责
    2)开闭原则:扩展开放,修改关闭
    3)替换原则:子类可以替换父类,但是父雷不能替换子类
    4)依赖倒置:
    5)接口隔离:

接口

  1. json

  2. ES6 class 内不能再定义属性,而是直接在constructor 里面初始化就好了,在函数中调用属性的时候用this.property调用.

  3. the maximum call stack size of Node.js: 11034

  4. js构造函数不重载

  5. 'null' is not a standard type.

  6. ES6 类

  7. 'use strict';

  8. js中没有私有成员,全是共有

  9. Array.indexOf() 查看是否包含字符,否则返回-1

7.17

  1. 扩展运算符(...)将一个数组扩展成参数序列

  2. console.log([1,[0,[2],3],'a'].toString());  // 1,0,2,3,a
    数组.toString()会对数组中每一个元素调用.toString()

  3. arrayObject.concat(array1,array2,array3...) 连接多个数组
      arrayObject.slice(start,end)   返回指定元素
      arrayObject.sort(cmp) cmp()函数另外定义 ,default为按字符串比较
      arrayObject.splice(start,howmany,(newarray/item1,item2,item3...))
    splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

  4. 对象的prototype属性使您有能力向对象添加属性和方法

  5. arrayObject.filter()
    arrayObject.map()
    arrayObject.reduce()
    arrayObject.some()判断数组中是否存在满足条件的元素,返回ture/false
    arrayObject.every()
    arrayObject.indexOf()

7.20

  1. bootstrap 栅格
  2. <link> 链接一个外部样式表

7.24

  1. 页面文件全部载入 DOMContentLoaded
  2. event.preventDefault(); 阻止默认函数对事件进行处理
  3. addEventListener(){return false;} 切断责任链,阻止冒泡

网页页面制作

  1. 到bootstrap上寻找模板
  2. 代码不能实现功能:到网页debug,watch变量,找到问题所在,google解决办法
  3. jquery的使用

7.27

  1. redis 中get(key)如果不存在,返回值是null;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,055评论 0 13
  • 第1章 认识JS JavaScript能做什么?1.增强页面动态效果(如:下拉菜单、图片轮播、信息滚动等)2.实现...
    mo默22阅读 1,170评论 0 5
  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 2,721评论 0 8
  • 你 内心的骚乱 是 思想的暴动 似 初春的嫩芽 与 风雪的抗争 阳光照耀你 早就该奔腾的洪流 是火山的泪水 诉说着...
    妄为哇阅读 90评论 0 0
  • 8c6d50b0d770阅读 512评论 0 0