Javascript变量意外标记>
在你说这是一篇重复文章之前,我已经阅读了所有其他文章,他们解决了我的问题,但现在我需要知道为什么以下内容会出现未可知的语法错误:意外标记> 下面我包括我的整个库,所以你可以看到我的代码,希望这将工作,请帮助我 这是我的图书馆Javascript变量意外标记>,javascript,variables,Javascript,Variables,在你说这是一篇重复文章之前,我已经阅读了所有其他文章,他们解决了我的问题,但现在我需要知道为什么以下内容会出现未可知的语法错误:意外标记> 下面我包括我的整个库,所以你可以看到我的代码,希望这将工作,请帮助我 这是我的图书馆 php2js = window.php2js || {}; php2js = function () { var yourVar1; var yourVar2; publicFunc1 = function(content) { document
php2js = window.php2js || {};
php2js = function () {
var yourVar1;
var yourVar2;
publicFunc1 = function(content) {
document.write(content);
}
publicFunc2 = function(handle, first, last) {
var string = handle.split(first);
if (1 in string) {
var output = string[1].split(last);
return output[0];
}
return '';
}
publicFunc3 = function(str,begin,end) {
t = str.split(begin);
t = t[1].split(end);
return t[0];
}
publicFunc4 = function(delimiter, string, limit) {
if (arguments.length < 2 ||
typeof delimiter === 'undefined' ||
typeof string === 'undefined') {
return null
}
if (delimiter === '' ||
delimiter === false ||
delimiter === null) {
return false
}
if (typeof delimiter === 'function' ||
typeof delimiter === 'object' ||
typeof string === 'function' ||
typeof string === 'object') {
return {
0: ''
}
}
if (delimiter === true) {
delimiter = '1'
}
delimiter += ''
string += ''
var s = string.split(delimiter)
if (typeof limit === 'undefined') return s
if (limit === 0) limit = 1
if (limit > 0) {
if (limit >= s.length) {
return s
}
return s
.slice(0, limit - 1)
.concat([s.slice(limit - 1)
.join(delimiter)
])
}
if (-limit >= s.length) {
return []
}
s.splice(s.length + limit)
return s
};
publicFunc5 = function(text, name, type) {
var a = document.createElement("a");
var file = new Blob([text], {type: type});
a.href = URL.createObjectURL(file);
a.download = name;
a.click();
}
publicFunc6 = function(id, string) {
var element = document.getElementById(id);
element.innerHTML = string;
}
publicFunc7 = function(grab) {
var parts = window.location.search.substr(1).split("&");
var $_GET = {};
for (var i = 0; i < parts.length; i++) {
var temp = parts[i].split("=");
$_GET[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);
}
return $_GET[grab];
}
publicFunc8 = function(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=/";
}
publicFunc9 = function(name) {
var value = "; " + document.cookie;
var parts = value.split("; " + name + "=");
if (parts.length == 2) return parts.pop().split(";").shift();
}
publicFunc10 = function() {
return navigator.userAgent;
}
publicFunc11 = function(str) {
return String(str).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"');
}
publicFunc12 = function() {
var obj = {}
obj.foo = 42;
var bar = 'foo';
console.log(obj[bar]);
}
return {
"echo" : publicFunc1,
"GetBetween" : publicFunc2,
"GBS" : publicFunc3,
"explode" : publicFunc4,
"fcd" : publicFunc5,
"echoById" : publicFunc6,
"$_GET" : publicFunc7,
"setCookie" : publicFunc8,
"$_COOKIE" : publicFunc9,
"$UA" : publicFunc10,
"htmlentities" : publicFunc11,
"$this->" : publicFunc12
}
}();
因此,您有一个对象,其中存储了一些方法。键的值在点语法中无效。为了用代码调用它,需要使用括号表示法。基本思想: var php2js=函数{ 返回{ $this->:函数{ console.loghey; } }; };
php2js[$this->];这是什么php2js.$this->;当然不是javascript!我完全不知道用JavaScript中的this->语法想要实现什么,但是如果你有一个带有$this->属性的对象,你可以用obj[$this->]来访问它。这太奇怪了,没有用处。这是我的javascript库的一部分。好吧,它仍然不是一个有效的JS。php2js是一个可以自动将PHP代码转换为javascript代码的工具。-可能会出什么问题…它会抛出一个错误,因为php2js。$This->;看起来不像JS代码。所以我的代码确实返回{$this->:function{console.log{hey;}}php2js[$this->];因为我有一个完整的JS库,它的所有函数都从返回中运行,所以返回{function:myfunction,function2:myfunction1}你试过代码了吗,最后返回的东西并不重要……我把它归结为一个简单的例子。我试过了,但它说的是未捕获的TypeError:php2js。$this->不是一个函数,我使用了你的确切代码,甚至是php2js[$this->];我得到了它,我只是把它放在了reutrn中,非常感谢!
php2js = window.php2js || {};
php2js = function () {
var yourVar1;
var yourVar2;
publicFunc1 = function(content) {
document.write(content);
}
publicFunc2 = function(handle, first, last) {
var string = handle.split(first);
if (1 in string) {
var output = string[1].split(last);
return output[0];
}
return '';
}
publicFunc3 = function(str,begin,end) {
t = str.split(begin);
t = t[1].split(end);
return t[0];
}
publicFunc4 = function(delimiter, string, limit) {
if (arguments.length < 2 ||
typeof delimiter === 'undefined' ||
typeof string === 'undefined') {
return null
}
if (delimiter === '' ||
delimiter === false ||
delimiter === null) {
return false
}
if (typeof delimiter === 'function' ||
typeof delimiter === 'object' ||
typeof string === 'function' ||
typeof string === 'object') {
return {
0: ''
}
}
if (delimiter === true) {
delimiter = '1'
}
delimiter += ''
string += ''
var s = string.split(delimiter)
if (typeof limit === 'undefined') return s
if (limit === 0) limit = 1
if (limit > 0) {
if (limit >= s.length) {
return s
}
return s
.slice(0, limit - 1)
.concat([s.slice(limit - 1)
.join(delimiter)
])
}
if (-limit >= s.length) {
return []
}
s.splice(s.length + limit)
return s
};
publicFunc5 = function(text, name, type) {
var a = document.createElement("a");
var file = new Blob([text], {type: type});
a.href = URL.createObjectURL(file);
a.download = name;
a.click();
}
publicFunc6 = function(id, string) {
var element = document.getElementById(id);
element.innerHTML = string;
}
publicFunc7 = function(grab) {
var parts = window.location.search.substr(1).split("&");
var $_GET = {};
for (var i = 0; i < parts.length; i++) {
var temp = parts[i].split("=");
$_GET[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);
}
return $_GET[grab];
}
publicFunc8 = function(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=/";
}
publicFunc9 = function(name) {
var value = "; " + document.cookie;
var parts = value.split("; " + name + "=");
if (parts.length == 2) return parts.pop().split(";").shift();
}
publicFunc10 = function() {
return navigator.userAgent;
}
publicFunc11 = function(str) {
return String(str).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"');
}
publicFunc12 = function() {
var obj = {}
obj.foo = 42;
var bar = 'foo';
console.log(obj[bar]);
}
return {
"echo" : publicFunc1,
"GetBetween" : publicFunc2,
"GBS" : publicFunc3,
"explode" : publicFunc4,
"fcd" : publicFunc5,
"echoById" : publicFunc6,
"$_GET" : publicFunc7,
"setCookie" : publicFunc8,
"$_COOKIE" : publicFunc9,
"$UA" : publicFunc10,
"htmlentities" : publicFunc11,
"$this->" : publicFunc12
}
}();