把这个 number 转换成一个十进制形式的字符串。可选参数 fractionDigits 控制其小数点后的数字位数。
toPrecision(precision)
同 toFixed ,参数控制有效数字的位数
toString()
将number转换成字符串
Object
hasOwnProperty(name)
只检查此对象中的属性,原型链中得同名属性不会被检查。如果存在此属性则返回 true。
String
charAt(pos)
返回在字符串中pos处的字符
charCodeAt(pos)
返回不是一个字符串,而是以整数形式表示的字符码位
concat(string...)
与其他字符串连接起来构造一个新字符串,不常用,因为 + 也能满足需求
indexOf(searchString,pos)
在字符串内查找另一个字符串 searchString,如果被找到,则返回第一个匹配字符的位置,否则返回 -1 。
可选参数 pos 设置从字符串的某个指定位置开始查找。
lastIndexOf(searchString,pos)
与indexOf类似,不同从末尾开始查找
slice(start,end)
复制字符串的一部分构造一个新的字符串
split(separator,limit)
把字符串分割成片段创建数组,limit可限制被分割的片段数量。
一个有意思的技巧:
new Array(11).join('0').split('') //生成10个元素为0的数组
toLowerCase()
将字符串中所有字母转化为小写
toUpperCase()
将字符串中所有字母转化为大写
六、糟粕
这一部分用来吐槽JS这门语言设计上不周到的地方
全局变量
共三种方法定义全局变量:
脱离任何函数var语句 var foo = value
直接添加一个属性到全局对象中,全局对象是所有全局变量的容器。在web中,全局对象是 window : window.foo = value
使用未声明的变量,这被称为隐式的全局变量:foo = value
之前说过,可以通过 创建一个全局变量 和 闭包 减少全局变量污染(注意,只是减少,没办法避免,总要有暴露出来的变量,不要钻牛角尖)。
作用域
没有块级作用域,只有函数作用域
自动插入分号
JavaScript 有一个机制,会试图通过自动插入分号来修正有缺损的程序。它有可能会掩盖更为严重的错误。
看起来是返回一个对象,但是自动插入分号让它返回了undefined,这样可以避免:
typeof
typeof并不能正确地检测数据类型:
typeof null ; //object
所以使用 Object.prototype.toString.call(null) 这个办法就好,万能的!
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持梦搏网络!
Javascript 高性能之递归,迭代,查表法详解及实例
[8993]
Javascript 高性能之递归,迭代,查表法详解
递归
概念:函数通过直接调用自身,或者两个函数之间的互相调用,来达到一定的目的,比如排序,阶乘等
简单的递归
阶乘
递归实现排序
迭代
每个浏览器对递归都有调用栈上限的问题,且如果不小心使用也很容易造成死循环导致程序崩溃。如果考虑到性能问题,可以使用迭代来代替递归,因为运行循环总比反复调用函数的开销少很多
递归优化,查表法-Memoization(记忆): 函数可以用对象去记住先前操纵的成果,从而能避免无谓的运算
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-86464-4.html
一年后就没阿里了
不过比起克林顿时期的直接上船搜索银河号以及驻南使馆被精确攻击好很多了