知识点(三)

1、css垂直居中css

 


2、js经常使用数据类型html

字符串值,数值,布尔值,数组,对象。web

 


3、async和awaitcanvas

              在async/await以前,咱们有三种方式写异步代码 1嵌套回调 2以Promise为主的链式回调3使用Generators数组

 

    1. async/await更加语义化,async 是“异步”的简写,async function 用于申明一个 function 是异步的;await,能够认为是async wait的简写, 用于等待一个异步方法执行完成;app

    2. async/await是一个用同步思惟解决异步问题的方案(等结果出来以后,代码才会继续往下执行)异步

    3. 能够经过多层 async function 的同步写法代替传统的callback嵌套async

      async function语法

      • 自动将常规函数转换成Promise,返回值也是一个Promise对象ide

      • 只有async函数内部的异步操做执行完,才会执行then方法指定的回调函数函数

      • 异步函数内部可使用await

     await语法

  • await 放置在Promise调用以前,await 强制后面点代码等待,直到Promise对象resolve,获得resolve的值做为await表达式的运算结果

  • await只能在async函数内部使用,用在普通函数里就会报错

 


4、null 和undefine的区别

null: Null类型,表明“空值”,表明一个空对象指针,使用typeof运算获得 “object”,因此你能够认为它是一个特殊的对象值。

undefined: Undefined类型,当一个声明了一个变量未初始化时,获得的就是undefined。

 null 和 undefined 都表示“值的空缺”,

undefined是表示系统级的、出乎意料的或相似错误的值的空缺,

而null是表示程序级的、正常的或在乎料之中的值的空缺。

 5、CSS3作动画

@keyframes   animation transition transform

  • translate()
  • rotate()
  • scale()
  • skew()
  • matrix()
@-webkit-keyframes myfirst /* Safari 与 Chrome */ { from {background: red;} to {background: yellow;} }
媒体查询
@media screen and (min-width: 480px) {
    body {
         margin: 0px; padding: 0px; color: rgb(170, 17, 17); font-family: Menlo, Monaco, Consolas, "Andale Mono", "lucida console", "Courier New", monospace; font-size: 13.199999809265137px;"> lightgreen;
    }
}
6、canvas
一、var c=document.getElementById("myCanvas");
    var ctx=c.getContext("2d");
二、画矩形
ctx.fillStyle="#FF0000";
ctx.fillRect(0,0,150,75);//在画布上绘制 150x75 的矩形,从左上角开始 (0,0)。
三、画线
ctx.moveTo(0,0); ctx.lineTo(200,100); ctx.stroke();
四、画圆
ctx.beginPath(); ctx.arc(95,50,40,0,2*Math.PI); ctx.stroke();
五、文本
ctx.font="30px Arial"; ctx.fillText("Hello World",10,50);
 
六、渐变
// 建立渐变
var grd=ctx.createLinearGradient(0,0,200,0);
grd.addColorStop(0,"red"); grd.addColorStop(1,"white");
// 填充渐变 ctx.fillStyle=grd; ctx.fillRect(10,10,150,80);
七、图片放到画布上
var img=document.getElementById("scream");
ctx.drawImage(img,10,10);
7、指针绑定
call和apply的区别在于call的第二个参数能够是任意类型,而apply的第二个参数必须是数组或者arguments
call、apply、bind 都是用来修改函数中的this,传参时,call是一个个传参apply是数组形式传参,call和apply当即执行而且返回值是你调用的方法的返回值,若该方法没有返回值,则返回undefined。bind是改变this后返回一个新的函数,他不会当即执行。
call、apply、bind 是Function.prototype下__proto__的方法,做用是执行一下目标函数,执行时顺便把目标函数中的this改一下,而后把结果输出,执行后,不会影响原函数!

 

 

 

相关文章
相关标签/搜索