2. ajax 异步请求数据的步骤? AJAX即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 Ajax的使用 (1)创建`XMLHttpRequest`对象,也就是创建一个异步调用对象. (2)创建一个新的`HTTP`请求,并指定该`HTTP`请求的方法、`URL`及验证信息. (3)设置响应`HTTP`请求状态变化的函数. (4)发送`HTTP`请求. (5)获取异步调用返回的数据. (6)使用JavaScript和DOM实现局部刷新.
3. html5 和CSS3 新特性 html5 新特性 用于绘画的 canvas 元素 用于媒介回放的 video 和 audio 元素 对本地离线存储的更好的支持 localStorage&sessionStorage 新的特殊内容元素,比如 article、footer、header、nav、section 新的表单控件,比如 calendar、date、time、email、url、search css3 新特性 阴影 文本阴影text-shadow 盒子阴影 box-shadow 边框圆角 border-radius 边框图片boeder-image 过渡trasition animation动画 2D 3D动画 伪类选择器 first-child last-child nth-child(n) 背景: 背景大小 background-size 背景原点background-origin 多背景background: url() ,url(),url() 渐变 : 线性渐变:background-image:linear-gradient(渐变方向开始和结束状态,渐变范围(距离)) 径向渐变background-image:radial-gradient(圆点,开始、结束) 4. 如何使元素垂直水平居中? 1.弹性盒方法——flex布局 元素:display: flex;justify-content: center;align-items: center; 2.定位+transform: 父元素 position: relative ; 子元素 position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%) 3.纯absolute 父元素 position: relative ; 子元素 position: absolute;top: 50%;left: 50%; margin-left:-1/2子元素宽度; margin-top: -1/2子元素高度; 4.margin:auto+absolute 父元素 position: relative ; 子元素 position: absolute;top: 0; left: 0; right:0; bottom:0;margin:auto 5.table-cell 父元素上一层:display table ; 父元素: display: table-cell;vertical-align: middle;text-align: center; ; 子元素:display: inline-block; 6.inlineblock法: 父元素: text-align: center; line-height: 父元素高度 font-size: 0; ; 子元素:display: inline-block; background-color:yellow; vertical-align:middle; 5. 简述一下你知道的有哪些ES6的新特性 Let const 结构赋值 箭头函数 字符串模板 class类 类。promise。箭头函数 解构赋值。let const async await 1.箭头操作符(箭头函数) 2.类的支持(class) 3.字符串模板 4.参数结构 5.参数默认值,不定参数,拓展参数 6.let与const 关键字 7.模块 8.Promise 6. 变量提升如何产生? 将变量的声明提升到执行环境的最顶端 原理:JS引擎的工作方式是①先解析代码,获取所有被声明的变量;②然后在运行。也就是专业来说是分为预处理和执行两个阶段。 变量提升的定义:所有变量的声明语句都会被提升到代码头部,这就是变量提升。 7. react 和 react-native 的 区别 React 是基础框架,是一套基础设计实现理念,开发者不能直接使用它来开发移动应用或者网页。 在React框架之上,发展出来的React Native可以用来开发移动应用,原生应用。 React Native产出的并不是“网页应用”, 或者说“HTML5应用”,又或者“混合应用”。 最终产品是一个真正的移动应用,从使用感受上和用Objective-C或Java编写的应用相比几乎是无法区分的。 React Native所使用的基础UI组件和原生应用完全一致。 你要做的就是把这些基础组件使用JavaScript和React的方式组合起来。 8. react 路由中 如何 传递参数 如何在组件内部获取参数 问号拼接的:this.props.match.params 冒号拼接的:Location .search 9. vue 属性 methods computed watch 这三个属性的区别 methods(方法): 只要进行调用就会执行,不管依赖的值有没有改变。无缓存。 computed(计算属性): 监听其所有依赖的变化,如果有变化会执行,没有变化不执行。有缓存,不用每次重新算。不支持异步。 详解=》在vue的 模板内({{}})是可以写一些简单的js表达式的 ,很便利。但是如果在页面中使用大量或是复杂的表达式去处理数据,对页面的维护会有很大的影响。这个时候就需要用到computed 计算属性来处理复杂的逻辑运算。 1.优点: 在数据未发生变化时,优先读取缓存。computed 计算属性只有在相关的数据发生变化时才会改变要计算的属性,当相关数据没有变化是,它会读取缓存。而不必想 motheds方法 和 watch 方法是否每次都去执行函数。 2.setter 和 getter方法:(注意在vue中书写时用set 和 get) setter 方法在设置值是触发。 getter 方法在获取值时触发。 watch(侦听属性): 观察某一个变量,发生变化会执行。支持异步。Vue 实例将会在实例化时调用 $watch(),遍历 watch 对象的每一个属性。 一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名,或者包含选项的对象。 小结: 1.主动调用的方法写在methods里,依据某些变量的更新进行某种操作用computed或者watch。 2.computed和watch:如果要异步,只能用watch。如果是计算某个值推荐用computed,比如购物车全选单选功能,购物车计算总价小计功能。 10. vue如何实现自定义事件 我们知道,父组件是使用 props 传递数据给子组件,但如果子组件要把数据传递回去,应该怎样做?那就是自定义事件! 使用 v-on 绑定自定义事件 每个 Vue 实例都实现了事件接口(Events interface),即: 使用 $on(eventName) 监听事件 使用 $emit(eventName) 触发事件 Vue的事件系统分离自浏览器的EventTarget API。尽管它们的运行类似,但是$on 和 $emit 不是addEventListener 和 dispatchEvent 的别名。 另外,父组件可以在使用子组件的地方直接用 v-on 来监听子组件触发的事件。