lft*_*ryt 3 javascript function undefined
我正在尝试理解这个isBreadwinner函数。为什么不true传入(**)函数。为什么是赚取会员:未定义
<script>
"use strict"
//creating a user object
let user = {
name : "Stackoverflow Developer",
age : 23
};
// appending properties to the user object
user.location = "NYC";
user["occupation"] = "JavaScript Developer";
user["salary"] = 10;
//(**)
let isBreadwinner = () => {
(user.salary) ? true : false;
};
console.log("asd" + isBreadwinner());
user["Earning member"] = isBreadwinner();
// printing the object
console.dir("User dir object" + JSON.stringify(user));
console.dir(user); //Earning member:undefined
</script>
Run Code Online (Sandbox Code Playgroud)
return你的函数中缺少了isBreadWinner。
let isBreadwinner = function() {
return (user.salary) ? true : false;
};
Run Code Online (Sandbox Code Playgroud)
如果你想跳过使用 areturn那么你可能需要使用 ES6 箭头函数,如果所有内容都在没有块的一行上声明,则该函数具有隐式返回{}。
let isBreadwinner = () => (user.salary) ? true : false;