zoukankan      html  css  js  c++  java
  • 每日记载内容总结48

    1. 启动mysql报错Can't find file: './xx.frm'##
      原因: 所有文件的权限变成root,需要修改权限为mysql
      需要给与该目录和所有子目录的文件赋予mysql权限,执行命令:

      chown -R mysql.mysql *

    2. @Controller和@RestController的区别?原文

      官方文档:
      @RestController is a stereotype annotation that combines @ResponseBody and @Controller.
      意思是:
      @RestController注解相当于@ResponseBody + @Controller合在一起的作用。

      1. 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。
        例如:本来应该到success.jsp页面的,则其显示success.

      2. 如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。

      3. 如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

    3. vue-cli Uncaught SyntaxError: Use of const in strict mode解决办法 原文

      vue-cli初始化项目,开发环境运行项目使用了webpack-dev-server,而最新版本webpack-dev-server@2.9.1运行项目时,并不能成功的把es6语法转化为es5,所以在不支持es6的移动端浏览器中会报错例如钉钉、UC浏览器等:
      Uncaught SyntaxError: Use of const in strict mode
      解决办法:
      将webpack-dev-server版本降为2.7.1重新安装即可

    4. js删除数组里的某个元素 原文
      JavaScript中如何删除数组某个元素,我们有需要了解splice这个方法,翻译为剪接,arr.splice(0,1)表示删除数组的第一个,arr.splice(1,2)表示删除从第二个开始,长度为2个的元素。

      删除数组指定的某个元素
      首先可以给js的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为:

       Array.prototype.indexOf = function(val) {
       	for (var i = 0; i < this.length; i++) {
       		if (this[i] == val) return i;
       	}
       	return -1;
       };
      

      然后使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素,代码为:

       Array.prototype.remove = function(val) {
       	var index = this.indexOf(val);
       	if (index > -1) {
       		this.splice(index, 1);
       	}
       };
      

      这样就构造了这样一个函数,比如我有有一个数组:

       var emp = ['abs','dsf','sdf','fd']
       //删除其中的 'fd'
       emp.remove('fd');
      

      删除数组指定的某个位置元素

       // Array Remove - By John Resig (MIT Licensed)
       Array.prototype.remove = function(from, to) {
         var rest = this.slice((to || from) + 1 || this.length);
         this.length = from < 0 ? this.length + from : from;
         return this.push.apply(this, rest);
       };  
      
       // 移除数组中的第二项
       array.remove(1);
       // 移除数组中的倒数第二项
       array.remove(-2);
       // 移除数组中的第二项和第三项(从第二项开始,删除2个元素)
       array.remove(1,2);
       // 移除数组中的最后一项和倒数第二项(数组中的最后两项)
       array.remove(-2,-1);
      

      splice方法
      splice(index,len,[item])    注释:该方法会改变原始数组。

      splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值

      index:数组开始下标        len: 替换/删除的长度       item:替换的值,删除操作的话 item为空

      如:arr = ['a','b','c','d']

       //删除元素
       //删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变)
       var arr = ['a','b','c','d'];
       arr.splice(1,1);
       console.log(arr);  
       //['a','c','d']; 
       
       //删除起始下标为1,长度为2的一个值(len设置2)
       var arr2 = ['a','b','c','d']
       arr2.splice(1,2);
       console.log(arr2); 
       //['a','d']
       
       //替换元素
       //替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1
       var arr = ['a','b','c','d'];
       arr.splice(1,1,'ttt');
       console.log(arr);        
       //['a','ttt','c','d'] 
       
       var arr2 = ['a','b','c','d'];
       arr2.splice(1,2,'ttt');
       console.log(arr2);       
       //['a','ttt','d'] 替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1
       
       //添加元素 
       var arr = ['a','b','c','d'];
       arr.splice(1,0,'ttt');
       console.log(arr);        
       //['a','ttt','b','c','d'] 表示在下标为1处添加一项'ttt'
      

      delete方法
      delete删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变

       var arr = ['a','b','c','d'];
       delete arr[1];
       arr;  
       //["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined
  • 相关阅读:
    月经贴——.net前景何妨!
    [Asp.net 5] Options-配置文件之后的配置
    [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable<>补充)
    [Asp.net 5] Logging-其他日志系统的实现
    [Asp.net 5] Logging-日志系统的基本架构(下)
    [Asp.net 5] Logging-日志系统的基本架构(上)
    [Asp.net 5] Logging-新日志系统目录
    [Asp.net 5] Localization-简单易用的本地化
    [Asp.net 5] Localization-Asp.net运行时多语言
    java-多线程安全问题
  • 原文地址:https://www.cnblogs.com/cuiyf/p/10066055.html
Copyright © 2011-2022 走看看