2018-08-15

  • getBoundingClientRect();
    getBoundingClientRect();//获得相对于视窗位置的集合
  • <script type="text/javascript"></script>
    type为MIME类型,媒介类型/子类型
text/javascript
text/ecmascript
application/ecmascript
application/javascript
text/vbscript

语法:

fun.apply([thisObj],[argarray]);//thisObj可以改变函数中this的指向
fun.call([thisObj],arg1,arg2,...);
  • 一个函数接收一个函数作为参数就是高阶函数

Array函数

map() ,reduce()
map()高阶函数吧,接收一个函数作为参数

'use strict';
function pow(x) {
    return x * x;
}
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var results = arr.map(pow); // 结果为:[1, 4, 9, 16, 25, 36, 49, 64, 81]
console.log(results);

把Array的所有数字转为字符串:

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
arr.map(String); // ['1', '2', '3', '4', '5', '6', '7', '8', '9']

要把[1, 3, 5, 7, 9]变换成整数13579,reduce()也能派上用场:

var arr = [1, 3, 5, 7, 9];
arr.reduce(function (x, y) {
    return x * 10 + y;
});

String函数

trim()函数去除字符串左右的空格

生斐波那契数列的函数,可以这么写

function fib(max) {
    var
        t,
        a = 0,
        b = 1,
        arr = [0, 1];
    while (arr.length < max) {
        [a, b] = [b, a + b];
        arr.push(b);
    }
    return arr;
}

// 测试:
fib(5); // [0, 1, 1, 2, 3]
fib(10); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

包装对象

var n = new Number(123); // 123,生成了新的包装类型
var b = new Boolean(true); // true,生成了新的包装类型
var s = new String('str'); // 'str',生成了新的包装类型

typeof new Number(123); // 'object'
new Number(123) === 123; // false

typeof new Boolean(true); // 'object'
new Boolean(true) === true; // false

typeof new String('str'); // 'object'
new String('str') === 'str'; // false
  • 总结一下,有这么几条规则需要遵守:
  1. 不要使用new Number()、new Boolean()、new String()创建包装对象;
  2. 用parseInt()或parseFloat()来转换任意类型到number;
  3. 用String()来转换任意类型到string,或者直接调用某个对象的toString()方法;
  4. 通常不必把任意类型转换为boolean再判断,因为可以直接写if (myVar) {...};
  5. typeof操作符可以判断出number、boolean、string、function和undefined;
  6. 判断Array要使用Array.isArray(arr);
  7. 判断null请使用myVar === null;
  8. 判断某个全局变量是否存在用typeof window.myVar === 'undefined';
  9. 函数内部判断某个变量是否存在用typeof myVar === 'undefined'。
123..toString(); // '123', 注意是两个点!
(123).toString(); // '123'
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 使用Firebase云消息传递FCM和PHP的Android推送通知 最近,谷歌从谷歌云消息传递(GCM)迁移到F...
    ListenToCode阅读 11,430评论 1 4
  • 经过修改后的clearfix是一个多功能的样式,既可以解决高度塌陷,又可以确保父元素和子元素的垂直外边距不会重叠*...
    吴某人_0ad9阅读 1,477评论 0 0
  • 新建接口测试,填写路径、请求参数等值后,运行415,415错误代码表示不支持的媒体类型 解决方法:添加HTTP信息...
    窦常荣阅读 1,504评论 0 1
  • 看完电影【影】芳华之后,果断开始阅读原著。 电影中的何小萍和刘峰是悲剧的,但萧穗子的生活看起来还不错,林丁丁和郝淑...
    友谊西路127号阅读 1,693评论 0 0
  • 我在工作的世界中畅游,寻找自己的意义!
    一颗药丸阅读 984评论 0 1

友情链接更多精彩内容