- 浏览: 138136 次
- 性别:
- 来自: 南京
最新评论
文章列表
在centos上遇到的问题
sudo npm install *** 提示 sudo: npm: command not found
但是通过 su 切到 root用户 直接执行 npm install ***却是可以的,搞不懂啊
通过高人指点执行下面两句就可以了
sudo ln -s /usr/local/bin/npm /usr/bin/npm
sudo ln -s /usr/local/bin/node /usr/bin/node
搞定,知道这是建了link但是为什么会这样,还是不明白
之前有遇到过这样的需求,就是造成连续重复的字符 如:“000000”
一般而言,这基本是用来填补空位的,以达到格式上的要求,所以大部分情况下都直接写死 如
a + '000000' ,这里一般会多写几个0
然后对生成的字符串作截断处理,但是如果遇到重复个数不定,‘0000’这样的字符串不知道写多少合适,写多点总觉得不太好,这时候可以根据个数造成特定重复个数的字符串
var str = '';
for (var i=0; i < len; i++){
str += '0';
}
这方法,简单明了。但是有没有更直接的方法?答案是有的,偶然想到
...
centos中sudo
- 博客分类:
- linux
装好的VirtualBox后挂载共享目录
sudo mount -t vboxsf vmshare ~/vmshare
岂料以提示 xxx is not in the sudoers file
该死的centos,用ubuntu是没有这种问题的
这时要通过 su 切换到root用户
然后执行
visudo
添加红框中的文本
请用自己的用户名替换。
今天要把文件从windows中传到VirtualBox中的centos中,于是使用共享目录
先安装增强功能
在VirtualBox菜单中选择 Device -> Insert Guest Additions CD images
自动运行或者手动运行 autorun.sh
安装过程中发生错误,在错误日志 /var/log/vboxadd-install.log中看到
/tmp/vbox.0/Makefile.include.header:97: *** Error: unable to find the sources of
your current ...
在ubuntu中安装了IntelliJ IDEA后发现只能通过命令行启动,通过图标启动一直提示找不到 jdk
只需要修改 /usr/share/applications/jetbrains-idea.desktop
把其中的
Exec="/opt/idea-IU-143.1184.17/bin/idea.sh" %f
改为
Exec=env JAVA_HOME=/opt/jdk1.8.0_65 "/opt/idea-IU-143.1184.17/bin/idea.sh" %f
其实是添加了java_home配置,这样启动时就不会报找不 ...
2015年最后一天,入职这段时间一直用的是ubuntu,以前一直用sublime开发,可是发现ubuntu上sublime不支持中文输入,在网上找了个方法,记录一下
将以下代码复制保存在 sublime_imfix.c 文件中
#include <gtk/gtkimcontext.h>
void gtk_im_ ...
之前写到过,js中new Date()能接受的字符串格式,各个浏览器不一样,这次写了个关于时间对象和字符串之间的转化的方法
时间对象转化为字符串
function formatDate (date, format) {
var convert, res = '';
convert = {
'y': function (str) {
return (date.getFullYear() + '').slice(-(str.length < 4 ? 2 : str.length));
},
...
不确定是不是能正确转化所有数字,如发现有哪些数字转化不对,请指正
function digit2Uppercase (num) {
var digit, iUnit, dUnit, index, iStr, dStr, MAX_NUM = 999999999999.99;
if (num > MAX_NUM) {
return 'Exceed the upper limit ' + MAX_NUM;
}
digit = ['零','壹','贰','叁','肆','伍','陆','柒','捌','玖'];
...
在angular中自定时,scope可以设置为true, false(默认值), 一个对象。
1. 默认值false时,指令的作用域就是指令元素所在的作用域
2. 设置为true时,指令的作用域是从元素所在的作用域继承来的新作用域
3. 设置为一个对象时,产生一个隔离的作用域。
在使用隔离作用域的时候,属性有 = @ & 三种绑定策略
scope: {
name: '=',
age:'@',
gen: '&'
}
用 = 的时候,将本地属性name和指令元素所在作用域的属性进行双向绑定
用 @ 的时候,将本地属性a ...
这个问题也是前段时间面试的时候面试官问的,当时也只是略知一二,后来回来后查看的源码,才搞清楚
总结起来有以下几点:
1. 在$timeout中传入的函数会被包含在try...catch中,并且在异常时将异常交给$exceptionHandler
2. window.setTimeout返回的是数字id,可以通过window.clearTimeout(id)取消,而$timeout返回的是promise对象,要取消要用$timeout.cancel(返回的promise对象)
3. $timeout传入的function会更新作用域内的数据绑定,也就是说在function中对$scop ...
格式化数字 67235943 为货币金额显示方式 67,235,943要怎么做,这是暂时不考虑有小数的形式
采用正则替换,调用字符串replace方法
"67235943".replace(/(\d{1,3})(?=(?:\d{3})+$)/g, '$1,')
如果有小数部分,如 67235943.4687 此时如果只格式化整数部分,采用上面的正则,不过要稍微修改
"67235943.26564887".replace(/(\d{1,3})(?=(?:\d{3})+\.)/g, '$1,')
如果你还想把小数部分也格式化 ...
将有层级标志的数组转为树状结构
- 博客分类:
- web
最近项目中遇到了将数组形式的菜单转化为树状结构的菜单
例如,原始数据是
[
{id: 1, parentId: 0, name: '第一级菜单A' },
{id: 2, parentId: 0, name: '第一级菜单B' },
{id: 3, parentId: 1, name: '第二级菜单A' },
{id: 4, parentId: 1, name: '第二级菜单B' },
{id: 5, parentId: 3, name: '第三级菜单A' },
{id: 6, parentId: 3, name ...
对mouseenter和mouseover这两个事件,以前都是在用到的时候,去试试,哪个这个不行,换另外一个,哪个满足要求用哪个,没去具体试过两者之间的区别,今天测试了一下,做如下记录
<div id="blue" class="blue">
<div id="green" class="green"></div>
</div>
<style>
.blue{
height: 100px;
width: 100p ...
margin,元素的外边距,规定了元素与元素之间的间距,一直以来都是这么用的
margin: 10px 20px 15px 30px; 定义上右下左的边距
margin:0 auto; 定义居中
直到最近发现它和width,height什么的属性一样,也可以设置百分比。那这个百分比是相对谁的呢?
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
<style>
.contai ...
近来工作中遇到这样的两个需求
1. 给个Date对象,找出该时间所在月的第一天和最后一天
2. 给个Date对象,找出该时间所在周的第一天和最后一天
需求1中的找月第一天很简单,我记得api中有setDate方法可以使用
使用setDate方法前,先看看getDate
var date = new Date();
console.log(date);
// Sat Jul 18 2015 16:55:23 GMT+0800 (China Standard Time)
date.getDate();
// 18
可见getDate返回的是一个月中的第几天(从1开始 ...