我收到此错误,该如何解决呢?我正在尝试通过 SessionParser.js https://github.com/jethroacosta08/sessionparser从本地存储中获取详细信息。我正在尝试对数据的Tuition进行LocaleString。
我得到的错误是:
Uncaught TypeError: Cannot read property 'toLocaleString' of undefined
at paymentStd (onClick.js:12)
at HTMLButtonElement.onclick (database.html:1)
onclick.js
function paymentStd(i){
var data = lp.getKey('StudentsData','Students_Information')[i];
var data_all = lp.getKey('StudentsData','Students_Information');
$('#full_name').text(data.FirstName+" "+data.MiddleName+" "+data.LastName);
$('#StudentID').text(data.StudentID);
var Tuition = data.Tuition.toLocaleString();
console.log(Tuition);
$('#paymentStudent').text('Php '+ Tuition+'.00');
$('#prints').click(function(){
window.print();
});
}
答案 0 :(得分:0)
确保已定义data.Tuition(具有值)。只有这样,您才能使用toLocaleString方法
答案 1 :(得分:0)
最好的答案是在使用 TOLOCALESTRING 函数之前添加一个 if 条件,以便我们可以确认该函数仅在变量具有实际值时才运行。
其次还添加了可选的链接运算符。 可选链运算符 (?.) 使您能够读取位于连接对象链深处的属性值,而无需检查链中的每个引用是否有效。 Optional Chaining (?.)
这样:
let Tuition;
if (data.Tuition ! = null)
Tuition = data.Tuition.toLocaleString?.();
我希望这肯定会奏效,如果不对我的回答发表评论,我会进一步研究。