es6<一>

-块级作用域

function test(){
// var a=2;
for(let i=1;i<3;i++){
console.log(i)
}
// console.log(i). 报错
}
// test();


for(var I=0;i<5;i++ ){
(function(i){
li[i].οnclick=function(){}
})(i)
}


for(let i=0;i<5;i++){
li[i].οnclick=function(){}
}

-常量

const PI=1.34
const声明一个只读的常量。一旦声明,常量的值就不能改变。
对于复合类型的变量,变量名不指向数据,而是指向数据所在的地址。const命令只是保证变量名指向的地址不变,并不保证该地址的数据不变。

解构赋值


{
let a,b,rest;
[a,b]=[1,2]
console.log(a,b)
}


{
let a,b,rest;
[a,b,…rest]=[1,2,3,4,5,6,7];
console.log(a,b,rest)
}


{
let a,b;
({a,b}={a:1,b:2})
console.log(a,b)
}


{
let a,b,c,rest;
[a,b,c=3]=[1,2];
console.log(a,b,c)
}


{
let a=1;
let b=2;
[a,b]=[b,a]
console.log(a,b)
}


{
function f(){
return [1,2]
}
let a,b;
[a,b]=f();
console.log(a,b)
}


{
function f(){
return [1,2,3,4,5]
}
let a,b,c
[a,,,b]=f();
console.log(a,b)
}


{
function f(){
return [1,2,3,4,5]
}
let a,b,c
[a,,…b]=f();
console.log(a,b)
}


{
let o={
p:42,
q:true
}
let {p,q}=o
console.log(p,q)
}


{
let json={
title:’abc’,
test:[{
title:’test’,
desc:’description’
}]
}
let {title:esTitle,test:[{title:cnTitle}]}=json
console.log(esTitle,cnTitle)
}

es6正则

`
{
let regex= new RegExp('xyz','i');
let regex2=new RegExp(/xyz/i);
console.log(regex.test('xyz123'),regex2.test('xyz123'))
let regex3=new RegExp(/xyz/gi,'i');
console.log(regex3.flags)
}
{
let s='bbb_bb_b';
let a1=/b+/gi;
let a2=/b+/y;
//沾粘 y会_开始
console.log(a1.exec(s),a2.exec(s))
console.log(a1.exec(s),a2.exec(s))
console.log(a1.sticky)
//判断沾粘
}
{
console.log('u',/^\uD83D/.test('\uD83D\uDC2A'))
console.log('u-1',/^\uD83D/u.test('\uD83D'))
//unicode
}
{
console.log(/\u{61}/.test('a'))
console.log(/\u{61}/u.test('a'))
console.log(
\u{20BB7}`);
let s=’��’;
console.log(/^. /.test(s))console.log(/. /u.test(s))

}

字符串的一些api

`
{
console.log('a',
\u0061)
console.log('s',
\u{20BB7}`)
}
{
let s=’��a’;
console.log(s.length)

console.log(s.codePointAt(0).toString(16))

console.log(s.codePointAt(1))
console.log(s.charAt(0))
console.log(s.charAt(1))
console.log(s.charCodeAt(0))
console.log(s.charCodeAt(1))
}
{
console.log(String.fromCharCode(“0x20bb7”))
console.log(String.fromCodePoint(“0x20bb7”))

let str=’\u{20bb7}abc’
// for(let i=0;i

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
您可以使用HTML和JavaScript来创建一个画布,并实现您描述的功能。下面是一个简单的示例代码: ```html <!DOCTYPE html> <html> <head> <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"></script> <style> #canvas { position: relative; width: 500px; height: 500px; border: 1px solid black; } .math-container { position: absolute; border: 1px solid blue; background-color: #f0f0f0; padding: 10px; } </style> </head> <body> <div id="canvas"></div> <script> let canvas = document.getElementById('canvas'); let mathContainers = []; // 多维数组记录<div>的属性 function createMathContainer(latex, x, y) { let container = document.createElement('div'); container.className = 'math-container'; container.style.left = x + 'px'; container.style.top = y + 'px'; container.innerHTML = latex; canvas.appendChild(container); // 将<div>属性保存到多维数组 let containerData = { latex: latex, x: x, y: y, width: container.offsetWidth, height: container.offsetHeight }; mathContainers.push(containerData); } function moveMathContainer(event) { // 移动<div>的代码逻辑 } function handleMouseDown(event) { // 判断按下的位置是否存在<div>的代码逻辑 } function handleMouseMove(event) { // 按下并移动鼠标将拖动<div>的代码逻辑 } function handleMouseUp(event) { // 放开鼠标取消移动的代码逻辑 } canvas.addEventListener('mousedown', handleMouseDown); canvas.addEventListener('mousemove', handleMouseMove); canvas.addEventListener('mouseup', handleMouseUp); // 示例:创建一个初始的<div> createMathContainer('$$x^2 + y^2 = r^2$$', 100, 100); </script> </body> </html> ``` 这段代码创建了一个固定大小的画布,使用`<div>`元素作为画布容器。通过JavaScript代码,您可以创建新的`<div>`元素,并通过MathJax渲染数学公式。多维数组`mathContainers`用于记录每个`<div>`的属性。 您需要进一步实现`moveMathContainer`、`handleMouseDown`、`handleMouseMove`和`handleMouseUp`函数来完成移动和判断点击位置是否存在`<div>`等功能。这些功能的具体实现取决于您的需求和交互逻辑。 请注意,我只是根据您的描述提供了一个基本的示例代码,您可能需要根据实际情况进行修改和调整。希望这能帮到您!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值