1,使用正则表达式,“zhang-san” => ‘san-zhang’。
'zhang-san'.replace(/(w+)-(w+)/,'$2-$1');
2,生产环境如何解决跨域问题?
1,Nginx 代理转发,2,后端程序代理,3,CORS 跨源资源共享。4,jsonp
本地代理配置:Vue或者react 的脚手架config中的http-proxy配置;
匹配所有以/xxx/api开头的,修改target的代理地址为http://11.11.11.11:1111,如下
3,get,post 缓存问题及清除get请求缓存的方法。
get请求一般只是向服务器请求数据(这是约定而成的),为了更快完成操作,会在本地缓存数据以便将来再次访问;
而post请求一般用于update/submit更新提交数据,所以此时缓存数据就显得很蠢了;
所以才有了: get会缓存数据,而post不缓存数据 的说法。
清除方法: 在get请求时增加一个随机后缀,用来区分每一次访问的URL地址。
在后端程序中设置不进行缓存。
4,数据结构类型(8大分类)
数组,栈,链表,队列,树,图,堆,散列表
5,堆,栈的理解。
栈(stack):先进后出(FILO)。比如: var a = 123; 等基本类型的变量
堆(heap):先进先出(FIFO)(完全二叉树)。比如: var person1 = { a : 123 };
var person3 = '{}';var person4 = '{}'; console.log(person3 == person4); // true
var person1 = {};var person2 = {}; console.log(person1 == person2); // false
引用类型时按引用访问的,换句话说就是比较两个对象的堆内存中的地址是否相同,那很明显,person1和person2在堆内存中地址是不同的。
堆栈本身就是栈,只是换了个抽象的名字。
6,Vue 和 React 异同。
7,react比Vue多了哪个生命周期函数?作用是什么?
shouldComponentUpdate() 在react中这是一个性能优化的关键点。当父组件改变,全部子组件都会重新渲染,可以通过该钩子返回false来阻止渲染,此处还有另外一个方法pureComponent,详细参考React官方文档。
而在Vue中,默认是做了此优化。
8,加签验签。