我曾经写了很多Javascript,现在我只是跳回去了,但似乎我已经失去了理智。我正在尝试使用函数创建一个对象,我这样做的方式与我的在线搜索建议我应该这样做的方式相同。我创建了这个例子来展示我尝试过的很多方法。
$str = 'test test';
$post = preg_replace('/\s/', '', $str);
if (((strlen($str) - 1) == strlen($post) || (strlen($str) == strlen($post))) && ctype_alnum($post)) {
echo 'tis good';
} else {
echo 'rut row';
}
根据我的记忆,我应该可以打电话给 ab(), ac()和广告,同样也可以打电话给 A2
但是,当我尝试调用它们时,它不起作用。当我在控制台中键入变量名称时,它甚至不会将它们显示为选项。不过我可以打电话给 a.g()。我不能打电话给 a.h(),但我可以打电话给 a.prototype.h()。
我在chrome中试过这个,还有firefox和Safari中的一些东西。
据我可以从在线教程中看出,这并没有像我期望的那样进行交互。
答案 0 :(得分:2)
b
,e
和f
是函数a
范围内的变量。他们永远不会暴露在这个功能之外。
c
和d
被分配,在调用 a
时被分配给this
。如果您致电new a()
,那么它将是返回的实例。
g
是a
的属性,因此您可以调用它。
h
位于原型链上,因此它会c
和d
显示在使用a
创建的new
的实例上。