kaiyou

Results 76 issues of kaiyou

- 使用window.变量名定义为全局变量,但是注意:调用时候建议写上window.变量名,当然也可以不写 - 当全局变量跟局部变量重名时,局部变量的scope会覆盖掉全局变量的scope,当离开局部变量的scope后,又重回到全局变量的scope,而当全局变量遇上局部变量时,怎样使用全局变量呢?用window.globalVariableName 全局变量的优点: > 可以减少变量的个数,减少由于实际参数和形式参数的数据传递带来的时间消耗。 全局变量的缺点: > (1)全局变量保存在静态存贮区,程序开始运行时为其分配内存,程序结束释放该内存。与局部变量的动态分配、动态释放相比,生存期比较长,因此过多的全局变量会占用较多的内存单元。 > > (2)全局变量破坏了函数的封装性能。函数象一个黑匣子,一般是通过函数参数和返回值进行输入输出,函数内部实现相对独立。但函数中如果使用了全局变量,那么函数体内的语句就可以绕过函数参数和返回值进行存取,这种情况破坏了函数的独立性,使函数对全局变量产生依赖。同时,也降低了该函数的可移植性。 > > (3)全局变量使函数的代码可读性降低。由于多个函数都可能使用全局变量,函数执行时全局变量的值可能随时发生变化,对于程序的查错和调试都非常不利。 > 因此,如果不是万不得已,最好不要使用全局变量。 **let命令、const命令、class命令声明的全局变量,不属于全局对象的属性。**也就是说,从ES6开始,全局变量将逐步与全局对象的属性脱钩。 ``` JavaScript var a = 1; // 如果在Node的REPL环境,可以写成global.a // 或者采用通用方法,写成this.a window.a...

ES6
都是姿势
js

JS Date 对象用于处理日期和时间。 var myDate=new Date() ``` javascript new Date("January 12,2006 22:19:35"); new Date("January 12,2006"); new Date(2006,0,12,22,19,35); new Date(2006,0,12); new Date(1137075575000); ``` ios中 new Date() 不支持类似1990-12-1这种格式 需转换为类似1990/12/1 项目中 ```js //this.order.orderCompletedTime...

都是姿势
js

> Sass 扩展了 CSS 的 `@import` 规则,让它能够引入 SCSS 和 Sass 文件。 所有引入的 SCSS 和 Sass 文件都会被合并并输出一个单一的 CSS 文件。 另外,被导入的文件中所定义的变量或 mixins 都可以在主文件中使用。 > Sass 会在当前目录下寻找其他 Sass 文件, 如果是 Rack、Rails 或 Merb...

style 相关
Sass

``` scss //去掉input[type="number"]右边的箭头 input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-appearance: none; } input[type="number"]{ -moz-appearance: textfield; } ```

style 相关
html5

### ATOM 试用 在看完那个狂拽酷炫的插件**activate-power-mode**之后心中久久不能平复,回到家就立刻下了atom来尝试一下,听说atom大有赶超sublime的势头,就是稍微略慢性能上稍欠缺一些,占内存大,打开st内存占用250m左右,而atom打开后内存占用380m左右,但开启速度还可以没有传闻中的那么慢,而且这款ide好像完全是用node通过html+js+css打造的webapp,`cmd+option+i`都能打开自身的chrome开发者模式,真是太神奇了,他的主题也很多很漂亮而且都能用less之类自己修改,快捷键和st也很相似,是一个和st看起来像但本质完全不同的一个编辑器。 ``` 出了核心拓展和activate-power-mode和汉化包以外我又装了几个安装包,退程序内存占用已达1G。 ``` 安装包大多都是照着我st上packagelist上安过的在atom上安装类似的,emmet什么的,出了额外装的minimap在滚屏时小卡以外,整体来说体验还是不错的,给我的感觉就是内存占用有点儿高,听说打开大体积文件可能使程序崩溃,我倒没太尝试,毕竟还是更习惯st,但如果等将来atom更稳定性能更好的话感觉或许比sublime用起来还要更酷~还能和本家github无缝链接(打开atom一只没使用内存占用一直是380名左右),可以算是st的一个强力的竞争对手,弄不好是宿敌的存在,真么一想感觉时间过的真快,st好像也不在年轻了呢

杂七杂八
IDE

```javascript // const InlineManifestWebpackPlugin = require('inline-manifest-webpack-plugin') const HtmlWebpackInlineSourcePlugin = require('html-webpack-inline-source-plugin') const CompressionWebpackPlugin = require('compression-webpack-plugin') const runtimeChunkName = 'runtime~manifest' // 本想仿照实现cli2.0时的bundleAnalyzerReport 后来看英文版的文档发现同样加 --report 即可 // const bundleAnalyzerReport = process.env.npm_config_report const productionGzip...

杂七杂八
IDE

* 安装eslint 插件 * `npm install --save-dev eslint eslint-plugin-vue -g` * vscode设置 ```json "eslint.validate": [ "javascript", "javascriptreact", { "language": "html", "autoFix": true }, { "language": "vue", "autoFix": true } ],...

IDE

嵌入第三方外链 (验证并处理成 iframe) 项目要实现发布的文章加外链的功能,从[机核网](https://www.g-cores.com/)上扒了段代码,帮大忙了 混淆过的代码真是太难读了 ``` function () { "use strict"; //e 规则 var e = { bilibili: { source: /^(https?:)?\/\/www\.bilibili\.com\/video\/av(\d+)(\/?.*)?/, embedSrc: /^(https?:)?\/\/www\.bilibili\.com\/html\/player\.html/, isVideo: !0 }, bilibiliEmbed: { embedSrc: /^(https?:)?\/\/static\.hdslb\.com\/miniloader\.swf/,...

项目中

[参考](http://www.51xuediannao.com/css3/mix-blend-mode.html) 感觉像蒙版,用到不多,兼容性也未可知 但感觉好酷

style 相关
Css3

### document.referrer referrer 属性可返回载入当前文档的文档的 URL。 只有当用户在上一个页面点击链接到达当前页面,document.referrer才会有值当用户输入这一页的网址、通过response.redirect、用了ssl这些情况referrer都会为空。 另外,其必须通过http协议使用。否则不能得到返回值,即值为空。 ### window.opener Returns a reference to the window that opened this current window. When a window is opened from another window (using Window.open),...

都是姿势
js