Javascript 连续步骤功能?
我想做一些可以在值之后立即通过函数传递的事情 例如:Javascript 连续步骤功能?,javascript,function,Javascript,Function,我想做一些可以在值之后立即通过函数传递的事情 例如: // my value let str = "example"; // my func let sum = value => { if(value.length + 1 == 7) { return true; } else{ return false; } } // I want it to work when I write it like this. console.log( "awesome".sum() )
// my value
let str = "example";
// my func
let sum = value => {
if(value.length + 1 == 7) { return true; }
else{ return false; }
}
// I want it to work when I write it like this.
console.log( "awesome".sum() )
在
String.prototype中添加函数
String.prototype.sum = function()
{
return this.length + 1 == 7;
};
String.prototype.sum=函数(){
如果(this.length+1==7){return true;}
else{return false;}
}
console.log(“awesome.sum())
console.log(“awesom.sum())
//当我这样写的时候,我希望它能工作
您需要将该方法添加到String.prototype
String.prototype.sum = function()
{
return this.length + 1 == 7;
};
或者干脆
String.prototype.sum = function()
{
return this.length === 6;
};
您必须扩展字符串类
标准
let str = "example";
String.prototype.sum = value => {
if(value.length + 1 == 7) { return true; }
else{ return false; }
}
console.log( "awesome".sum(3) )
ES6
Object.assign(String.prototype, {
sum (value) {
if(value.length + 1 == 7) { return true; }
else{ return false; }
}
});
删除控制台日志,删除“awesome”字符串并将其称为sum(),您必须将其写入string.prototype
。对于“awesome.sum()
,这可能仍然不起作用。您必须执行(“awesome”).sum()
或var str=“awesome”;str.sum()
检查其他人的答案。这不是OP要求的。在这种情况下,您可以添加一个使用assign
的完整示例吗?您的标准函数将无法工作。我会让你去理解为什么。作为回答的扩展,你应该使用==
,在我看来,“+1===7”是不必要的。你可以做我想要的非常漂亮的。长度===6
。它是否仅适用于此处的文本?我必须为数组或对象编写不同的公式吗?当我可以继续更详细地研究时,它的名称是什么。对于数组、数字和对象,您需要将此方法添加到它们的原型中。这只适用于字符串。@Rajesh我知道这是没有必要的,我只是举了一个例子来更好地向您展示我想告诉您的内容:)我如何才能更详细地调查?这很有效,但我想了解更多。