String.chatAt()

let str='这是一个ceshi123()*&^';
//字符串的方法
//charAt()	
//返回在指定位置的字符。
//demo
console.log(str.charAt('1'),str.charAt('1以'));
//是 这
/*
    总结:
    1.str.charAt()方法的参数可以是数字或数字的字符串
    2.内部猜测使用的是Number方法,因为以数字开头非纯数字字符串(不包括空格)的内容无法读取最前面的数字
 */
function myCharAt(num){
    'use strict'
    //转换类型为数字
    num = Number(num);
    //当数值为NaN时,默认下标为0
    let index = num!==num ? 0 :num;
    //获取当前this
    let str=this;
    //判断this是否为字符串
    if(typeof str != 'string'){
        //不是就返回报错
        return Error(' not is a string');
    }else{
        //是就返回下标对应的值
        return str[index];
    }
}
//使用call方法,将this指向指定的对象
console.log(myCharAt.call(str));
//使用原型链的方式,可以让str直接调用方法
Object.defineProperty(str.__proto__,'myCharAt',{
    value:myCharAt,
    //不可变量
    enumerable:false,
    //不可修改内容
    writable:false,
    //不可修改限制
    enumerable:false
})
//通过原型链调用函数,打印结果
console.log(str.myCharAt());
14:10:32.219 [http-nio-8080-exec-3] INFO o.a.c.c.C.[.[.[/] - [log,173] - Initializing Spring DispatcherServlet 'dispatcherServlet' 14:10:32.271 [http-nio-8080-exec-3] ERROR c.j.c.f.w.e.GlobalExceptionHandler - [handleRuntimeException,100] - 请求地址'/article/list',发生未知异常. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.jjh.chat.article.mapper.ArticleMapper.selectArticleList at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:229) at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:53) at org.apache.ibatis.binding.MapperProxy.lambda$cachedInvoker$0(MapperProxy.java:96) at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) at org.apache.ibatis.util.MapUtil.computeIfAbsent(MapUtil.java:36) at org.apache.ibatis.binding.MapperProxy.cachedInvoker(MapperProxy.java:94) at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86) at jdk.proxy3/jdk.proxy3.$Proxy181.selectArticleList(Unknown Source) at com.jjh.chat.article.impl.ArticleServiceImpl.selectArticleList(ArticleServiceImpl.java:27) at com.jjh.chat.article.ArticleController.list(ArticleController.java:24) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) at org.springframework.web.servlet.mvc.method.annotation.RequestMappi
03-23
16:29:33.734 DEBUG o.s.web.servlet.DispatcherServlet - GET "/base/chat?question=%E4%BD%A0%E5%A5%BD", parameters={masked} 16:29:33.745 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to com.igruel.Deepseek.DeepSeekController#chat(String) 16:29:40.194 DEBUG o.s.web.servlet.DispatcherServlet - Failed to complete request: com.alibaba.fastjson.JSONException: not close json text, token : { 16:29:40.511 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [/base] threw exception [Request processing failed; nested exception is com.alibaba.fastjson.JSONException: not close json text, token : {] with root cause com.alibaba.fastjson.JSONException: not close json text, token : { at com.alibaba.fastjson.parser.DefaultJSONParser.close(DefaultJSONParser.java:1556) at com.alibaba.fastjson.JSON.parseObject(JSON.java:398) at com.alibaba.fastjson.JSON.parseObject(JSON.java:298) at com.alibaba.fastjson.JSON.parseObject(JSON.java:588) at com.igruel.Deepseek.DeepSeekService.chat(DeepSeekService.java:48) at com.igruel.Deepseek.DeepSeekController.chat(DeepSeekController.java:20) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandl
03-17
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值