Vue
-
什么是MVVM?
-
mvvm和mvc区别?它和其它框架(jquery)的区别是什么?哪些场景适合?
-
组件之间的传值?
-
Vue 双向绑定原理
-
描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?
-
虚拟 DOM 实现原理
-
Vue 中 key 值的作用?
-
Vue 的生命周期
-
Vue 组件间通信有哪些方式?
-
vue 中怎么重置 data?
-
组件中写 name 选项有什么作用?
-
Vue 的 nextTick 的原理是什么?
-
Vuex 有哪几种属性?
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
var deg = Math.random() * 30 * Math.PI / 180; //产生0~30之间的随机弧度
var txt = aCode[j]; //得到随机的一个内容
value[i] = txt.toLowerCase();
var x = 10 + i * 20; //文字在canvas上的x坐标
var y = 20 + Math.random() * 8; //文字在canvas上的y坐标
context.font = “bold 23px 微软雅黑”;
context.translate(x,y);
context.rotate(deg);
context.fillStyle = code_randomColor();
context.fillText(txt,0);
context.rotate(-deg);
context.translate(-x,-y);
}
// 将生成的值以属性的方法添加到元素
value = value.join(“”);
$(‘#canvas’).attr(‘data-code’,value)
//验证码上显示线条
for (var i = 0; i <= 5; i++) {
context.strokeStyle = code_randomColor();
context.beginPath();
context.moveTo(Math.random() * canvas_width,Math.random() * canvas_height);
context.lineTo(Math.random() * canvas_width,Math.random() * canvas_height);
context.stroke();
}
//验证码上显示小点
for (var i = 0; i <= 30; i++) {
context.strokeStyle = code_randomColor();
context.beginPath();
var x = Math.random() * canvas_width;
var y = Math.random() * canvas_height;
context.moveTo(x,y);
context.lineTo(x + 1,y + 1);
context.stroke();
}
}
生成验证码随机背景颜色:
function code_randomColor() { //得到随机的颜色值
var r = Math.floor(Math.random() * 256);
var g = Math.floor(Math.random() * 256);
var b = Math.floor(Math.random() * 256);
return “rgb(” + r + “,” + g + “,” + b + “)”;
}
在html中引用: