- 简述一下你知道的有哪些ES6的新特性
Let const 结构赋值 箭头函数 字符串模板 class类 promise 箭头函数 解构赋值 let const async await
箭头操作符(箭头函数)
类的支持(class)
字符串模板
解构赋值
默认参数,不定参数,拓展参数
let与const 关键字
模块
Promise
2. 说一下什么是块级作用域 , 它有什么作用
块级作用域就是let const,作用就是不会进行变量提升,能解决内存泄漏
作用:
变量提升
块级作用域任意嵌套
外层作用域无法读取内层作用域的变量
内层作用域可以定义外层作用域的同名变量
函数本身的作用域在其所在的块级作用域之内
在ES5中,因为没有块级作用域,获得广泛运用的是立即执行函数。现在ES6增加了块级作用域,那么立即执行函数就不再必要了
在严格模式下,函数只能在顶级作用域和函数内声明,在if代码块和循环代码块下的声明都会报错。
3. 谈谈箭头函数 有什么特点 ()=>{}
不能作为构造函数,不能使用new
不能使用arguments,取而代之用rest参数解决
不绑定this,会捕获其定义时所在的this指向作为自己的this
箭头函数没有原型对象
与执行时this无关 ,只与定义时的this有关。 箭头函数能够保存this的指向
语法简单
内置return语句、单行代码返回当前代码的返回值、多行时返回undefined
自动绑定this、this为上级的作用域中、也就是定义时所在的作用域中的this
没有arguments参数
没有constructor、prototype属性、不能被new
以字面量的形式作为对象的属性时、容易发生引用错误
4. class 类 中 super关键字 super 当函数时表示什么?super当对象时表示什么?
当super关键字表示原型对象时,只能用在对象的方法中
当super关键字表示函数时,总是指向函数所在的当前对象
函数时,指向父类的构造器
对象时,指向父类的原型
- ES6 中你是怎么使用 promise 的 ?
New promise 带2个参数(resolve,reject)执行返回一个成功的回调函数或是一个失败的回调函数。再在返回的函数上直接调用then方法,then接收一个参数,是函数(这个函数是回调函数)
promise是用来实现异步编程的一种解决方案
Promise在生命周期内有三种状态,
分别是
pending(进行中)、
Resolved(已完成,又称 Fulfilled) 或
rejected(已失败)
使用方式:(一个成功的resolve函数, 一个失败的reject函数)
(1)new Promise(function(resolve, reject)
(2)then(resolve,reject)
(3)then(resolve),catch(reject)
- 严格模式 有什么 特点 ? (3-4条)
1.严格模式下不可以使用with()
2.严格模式下,变量必须声明
3.严格模式下,this默认是undefined
4.严格模式下,为只读变量和不可扩展对象赋值会报错
5.严格模式下,函数的形参不可以同名
6.严格模式下,不可以使用caller和arguments的属性,会报错
-
混合开发的原理(cordova DCloud 微信JSSDK)
WebViewJavacrriptBridge是移动UIView和Html交互通信的桥梁,实现native code和js 的互相调用的桥梁。 -
混合开发的优缺点
优点
1.一次编译多平台运行
2.开发速度快,不需要了解各个平台的native开发语言也可以开发轻量级移动应用
3.各平台UI表现一致
4.内容更新不需要内容审查
缺点
-
使用体验与native开发有差距
-
前端代码容易被盗取
-
JSSDK 你知道的有哪些 API (SDK JDK)
Wx.createAudioContext(相机)
Wx.createMapContext(地图)
Wx.getExtConfig(第三方平台)
Wx.getShareInfo(获取转发详细信息)
分享到朋友圈 wx.ready(function{ })
图像选择接口 wx.chooseImage({})
获取地理位置接口 wx.getLocation({})
wx.request wx.showtoast. wx.showloading wx.getstoragesync. wx.getuserinfo
Map. Swiper button input scroll-view from image
- 你在实际开发中如何和IOS/Android 程序员进行交互的。
可参考:https://www.jianshu.com/p/8eba2c328d5e
传统开发模式:
一般传统上的开发协作模式有两种:
一种是前端先写一个静态页面,写好后,让后端去套模板。静态页面可以本地开发,也无需考虑业务逻辑只需要实现View即可。不足是还需要后端套模板,这些前端代码后端需要浏览一遍,以免出错。
另一种协作模式是,前端直接去写模板,这样做的问题在于,前端编写过程中很依赖与后端环境,如果当后端没写完的情况下,前端几乎没法干活。
从传统到前后端分离:
前后端分离意味着,前后端之间使用 JSON 来交流,两个开发团队之间使用 API 作为契约进行交互。从此,后台选用的技术栈不影响前台。当后台开发人员选择 Java 的时候,我可以不用 JSP 来编写前端页面,继续使用我的 React 又或者 Angular。而我使用 React 时,也不影响后台使用某一个框架。安卓和IOS app也可以使用 JSON 来和后端交流。
当变量还没有赋值的时候,使用变量的时候,会报一个undefined,js是弱语言,会进行变量提升
后台传一个URL给你,将URL传给安卓/iOS,他负责播放
- 变量提升如何产生?
在声明之前变量值为undefined
将变量的声明提升到执行环境的最顶端
原理:JS引擎的工作方式是①先解析代码,获取所有被声明的变量;②然后在运行。也就是专业来说是分为预处理和执行两个阶段。
变量提升的定义:所有变量的声明语句都会被提升到代码头部,这就是变量提升。
-
微信小程序开发 中 关于 page的生命周期钩子函数 有哪些?
onload onready. onShow,onHide,onUnload -
微信小程序 如何设置 https 请求 , wx.request 可以使用 POST 请求吗?
买腾讯云域名十几块,服务器一两百 -
微信小程序 你经常使用哪些指令 wx:if wx:for hidden
wx:if. Wx;for hidden -
微信小程序 绑定事件 bindtap 和 catch 的区别
bindtap. 不会阻止事件冒泡
catch 阻止事件冒泡
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
新的改变
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 多屏幕编辑 Markdown文章功能;
- 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC
语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
带尺寸的图片:
居中的图片:
居中并且带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片
.
// An highlighted block
var foo = 'bar';
生成一个适合你的列表
- 项目
- 项目
- 项目
- 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用:---------:
居中
使用:----------
居左
使用----------:
居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | 'Isn't this fun?' | ‘Isn’t this fun?’ |
Quotes | "Isn't this fun?" | “Isn’t this fun?” |
Dashes | -- is en-dash, --- is em-dash | – is en-dash, — is em-dash |
创建一个自定义列表
-
Markdown
- Text-to- HTML conversion tool Authors
- John
- Luke
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:
这将产生一个流程图。:
- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
- 关于 Flowchart流程图 语法,参考 这儿.
导出与导入
导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
导入
如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。
注脚的解释 ↩︎