js 常见问题

1、金额的新写法

var num = 123456; var options = { style: 'currency', currency: 'CNY' }; num.toLocaleString('zh-CN', options);

金额的新写法

2、时间新写法

new Date().toLocaleString("zh-ch")

时间新写法

3、判断值的类型

[[Class]]是一个内部属性,值为一个类型字符串,可以用来判断对象值的类型.

typeof是一个运算符,用来判断原始值的类型,还可以用来区分原始值和对象值.

instanceof是一个可以判断对象值类型的运算符.

Array.isArray()是一个函数,用来判断某个值是否是数组.

[[Class]]

[[Class]]是一个内部属性,它的值可能是下面字符串中的一个:

"Arguments", "Array", "Boolean", "Date", "Error", "Function", "JSON", "Math", "Number", "Object", "RegExp", "String"

在JavaScript代码中,唯一可以访问该属性的方法就是通过默认的toString()方法,通常是这样调用的:

Object.prototype.toString.call(value)

因此,下面的函数可以用来获取到任意值x的[[Class]]属性:

functiongetClass(x) {

varstr =Object.prototype.toString.call(x);

return/^\[object (.*)\]$/.exec(str)[1];//"[object Array]” =>Array

}

等同于

functiongetClass(x) {

returnObject.prototype.toString.call(param).slice(8, -1)

}

因此,下面的函数可以用来获取到任意值x的[[Class]]属性:

functiongetClass(x) {

varstr =Object.prototype.toString.call(x);

return/^\[object (.*)\]$/.exec(str)[1];

}

> getClass(null)

'Null'

4、WebSockethttps://www.zhihu.com/question/20215561

5、document fragment :加快 DOM 加载速度

http://www.cnblogs.com/springfield/archive/2010/06/27/1765589.html

6、grunthttp://yujiangshui.com/grunt-basic-tutorial/

7、joshinghttp://jinlong.github.io/2014/10/25/jshint-configuration/

8、vue 源码:http://teazean.com/2016/05/27/vue

9、window.devicePixelRatio:

1)http://www.zhangxinxu.com/wordpress/2012/08/window-devicepixelratio/

2)http://www.html-js.com/article/Mobile-terminal-H5-mobile-terminal-HD-multi-screen-adaptation-scheme%203041

10、CSSOM视图模式:http://www.zhangxinxu.com/wordpress/2011/09/cssom%E8%A7%86%E5%9B%BE%E6%A8%A1%E5%BC%8Fcssom-view-module%E7%9B%B8%E5%85%B3%E6%95%B4%E7%90%86%E4%B8%8E%E4%BB%8B%E7%BB%8D/

11、http://ju.outofmemory.cn/entry/225500

12、 web pack:https://github.com/chemdemo/chemdemo.github.io/issues/13

13、动画兼容:http://www.zhangxinxu.com/wordpress/2013/09/css3-animation-requestanimationframe-tween-%E5%8A%A8%E7%94%BB%E7%AE%97%E6%B3%95/

14、

(callback=>window.setTimeout(callback,1000/60));

letrequestAnimationFrame=

window.requestAnimationFrame||

window.mozRequestAnimationFrame||

window.webkitRequestAnimationFrame||

15、http://www.cnblogs.com/zichi/p/4359786.htmlplg_nld=1&plg_uin=1&plg_nld=1&plg_usr=1&plg_vkey=1&plg_dev=1

16、http://web.jobbole.com/84723/?plg_nld=1&plg_uin=1&plg_nld=1&plg_usr=1&plg_vkey=1&plg_dev=1

17、 如何获得信息

1) github为主,微博公众号,

18、cookie 增删改

/**

* 设置cookie

* @param {string} name  键名

* @param {string} value 键值

* @param {integer} days cookie周期

*/

function setCookie(name,value,days) {

   if (days) {

       var date = new Date();

        date.setTime(date.getTime()+(days*24*60*60*1000));

        var expires = "; expires="+date.toGMTString();

   }else{

         var expires = "";

   }

   document.cookie = name+"="+value+expires+"; path=/; domain=.test.ele.me";

}

// 获取cookie

functiongetCookie(name) {

     varnameEQ = name +"=";

     varca = document.cookie.split(';');

     for(vari=0;i < ca.length;i++) {

         varc = ca[i];

         while(c.charAt(0)==' ') c = c.substring(1,c.length);

        if(c.indexOf(nameEQ) == 0)returnc.substring(nameEQ.length,c.length);

      }

   returnnull;

}

// 删除cookie

functiondeleteCookie(name) {

    setCookie(name,"",-1);

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,969评论 19 139
  • JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它。昨天我们将这些模式应用到...
    寒剑飘零阅读 727评论 0 0
  • (原网址:http://blog.csdn.net/stronger_lxs/article/details/51...
    空谷悠阅读 855评论 0 1
  • 安装配置的时候,下面这篇文章写得很详细,我就不作赘述了: windows 10 下配置安装node.js 我写一下...
    wanhsin阅读 1,858评论 0 0
  • X姐是一个勤劳能干、聪慧善良、干净利落的女子——这是别人眼中口中的X姐。最了解X姐的人是她自己。 (此处省略...
    麦草店主阅读 197评论 0 0