是否可以将作为参数传递的文字字符串与引用JavaScript中的字符串值的变量区分开来?我认为这是不可能的,但也许有办法。
例如:
var myString = 'some string'
function whoIsThat(x){
alert(typeof(x))
};
whoIsThat(myString) // differentiate this ?
whoIsThat('some string') // from this ?
答案 0 :(得分:0)
如果您仅使用作为变量参数传递的文字字符串,并使用文字字符串本身:
var myString = 'some string'
'some string'
然后没有办法区分它们。另请注意,无论如何,这两个都会传递给局部变量x
。虽然您进行了轻微修改并使用了String
对象。然后差别很容易:
var myString = new String('some string');
function whoIsThat(x){
alert(typeof(x))
};
whoIsThat(myString); // -> object
whoIsThat('some string'); // -> string