定义一个方法,传入一个string类型的参数,而后将string的每一个字符间加个空格返回。数组
spacify('hello world') // => 'h e l l o w o r l d'
安全
function spacify(str){函数
returen str.split('').join(' ');this
split方法 // 将一个字符串分割为子字符串,而后将结果做为字符串数组返回。spa
join方法 // 返回字符串值,其中包含了链接到一块儿的数组的全部元素,元素由指定的分隔符分隔开来。prototype
}code
把spacify方法放入 String 对象上面。对象
'hello world'.spacify();
ip
String.prototype.spacify = function(){ci
return this.split('').join(' ');
}
直接在对象的原型(prototypes)上添加方法是否安全,尤为是在 Object 对象上。
函数声明:function fnName(){......}; // 使用function关键字声明一个函数,再指定一个名字,叫函数声明。
函数表达式:var fnName = function(){......}; // 使用function关键字声明一个函数,可是未给函数命名。最后将匿名函数赋值给一个变量,叫函数表达式。
匿名函数:function(){......};使用function关键字声明一个函数,可是并未给函数命名,因此叫匿名函数。匿名函数属于函数表达式,匿名函数有不少做用,用于名种回调。
函数声明和函数表达式不一样点:
1.JavaScript引擎在解析JavaScript代码时会‘函数声明提高’(function declaration Hoisting)当前执行环境(做用域)上的函数声明,而函数表达式必须等到JavaScript引擎执行到它所在行时,
才会从上而下一行一行地解析函数表达式。
2.函数表达式后面能够加括号当即调用该函数,函数声明不能够,只能以fnName()形式调用。