我有一些邏輯需要在某些時候運行本機JavaScript函數並將「動態」參數傳遞給這些函數。例如,我需要調用定義爲["i want to split this", " " ]
使用參數數組調用String.prototype.split
參數數組的split
函數什麼,我想到目前爲止是這樣的:
String.prototype.split.call("i want to split this", " ")
工作正常,但因爲我有我的論點是一個數組,那麼我需要使用apply
。但是:
String.prototype.split.apply(null, ["i want to split this", " " ])
將無法正常工作,我會得到Uncaught TypeError: String.prototype.split called on null or undefined
東西使用call
與spread
語法工程..讓:
String.prototype.split.call(...["i want to split this", " " ])
但問題是我的Node.js版本尚不支持spread
語法。
希望對此有幫助。
爲什麼你不能逆轉你的想法使你自己的'split()'函數接受一個單一的字符串或數組並相應地拆分? –
@ScottMarcus這裏的問題是,我可能會調用其他本地功能,如分裂..這裏分裂只是一個例子..但基本上它可以是任何原生的JavaScript函數 – AhmadAssaf
你如何確定什麼字符串被拆分?或者可以在哪個對象上調用本地函數。聽起來你太抽象了,IMO。 –